美的java面试经验

一面

1手撕:合并两个有序数组,写完验证通过后给面试官讲思路,分析复杂度

2然后开始撕java Java对象创建方式

3接口和抽象类的区别

4浅拷贝深拷贝

5 Java ArrayList LinkedList区别

6 HashMap原理

7 JVM内存结构,每个区域都是存放什么内容

8堆的内部结构,新生代GC过程,如何判断对象是否应该GC

9常用垃圾收集器

10 多线程:创建线程的方式

二面

1.自我介绍

2 HashMap和HashTable 的区别(线程安全性,扩容机制,初始容量,key为null),继续追问两者在遍历的时候有什么区别?

3讲讲Java的GC

4 Java的多线程用过嘛,答项目里用过Java Stream的多线程,然后问实现线程的方式?

5 Synchonized关键字的实现原理

6讲一下数据库的索引有哪些实现方式以及各自的特点

7 sql如果查询慢怎么调优

8 Linux 查看某个端口是不是开启了可以使用什么命令?

三面

1、Java常见集合的实现方式,说下常用的设计模式,并举例使用到的场景,手写懒加载线程安全的单例模式

2、Redis 中的常见数据结构类型,Redis实现持久化的方式,优缺点以及使用场

3.大数据和高可用在项目中涉及的点6、MySQL主备同步的原理,怎么实现高可用?

4.client调用A 服务,A服务依赖于B服务,在不知道B是否高可用的情况下,怎么保证A的高可用?

以上就是面试的细节 有兴趣的小伙伴可以加群了解一下