2020年3月份,头条Java岗最新的面试题(三面)

一面

1、concurrent包下面用过哪些?

2、countdownlatch功能实现

3、synchronized和lock区别,重入锁

4、thread和runnable的区别

5、AtomicInteger实现原理(CAS自旋)

6、java并发sleep与wait、notify与notifyAll的区别

7、如何实现高效的同步链表

8、java都有哪些加锁方式(synchronized、ReentrantLock、共享锁、读写锁等)

9、设计模式(工厂模式、单例模式(几种情况)、适配器模式、装饰者模式)

10、maven依赖树,maven的依赖传递,循环依赖


二面

1、synchronized和reentrantLock的区别,synchronized用在代码快、方法、静态方法时锁的都是什么?

2、介绍spring的IOC和AOP,分别如何实现(classloader、动态代理)

3、JVM的内存布局以及垃圾回收原理及过程讲一下,讲一下CMS垃圾收集器垃圾回收的流程,以及CMS的缺点

4、redis如何处理分布式服务器并发造成的不一致

5、OSGi的机制

6、spring中bean加载机制,bean生成的具体步骤,ioc注入的方式

7、spring何时创建applicationContext

8、listener是监听哪个事件?

9、介绍ConcurrentHashMap原理,用的是哪种锁,segment有没可能增大?

10、解释mysql索引、b树,为啥不用平衡二叉树、红黑树

11、Zookeeper如何同步配置


三面

1、Java线程池ThreadPoolEcecutor参数,基本参数,使用场景

2、MySQL的ACID讲一下,延伸到隔离级别

3、dubbo的实现原理,说说RPC的要点

4、GC停顿原因,如何降低停顿?

5、JVM如何调优、参数怎么调?

6、如何用工具分析jvm状态(visualVM看堆中对象的分配,对象间的引用、是否有内存泄漏,jstack看线程状态、是否死锁等等)

7、描述一致性hash算法(Redis)

8、再谈谈消息队列



关于面试方面,有什么问题,欢迎留言沟通,在这里也祝大家都能找到一个合适的工作~

发布了151 篇原创文章 · 获赞 294 · 访问量 36万+

猜你喜欢

转载自blog.csdn.net/Gupaoxueyuan/article/details/104887874