头条 java 面试题之 - 头条三面
一面
- 3、synchronized和lock区别,重入锁
- 5、AtomicInteger实现原理(CAS自旋)
- 6、java并发sleep与wait、notify与notifyAll的区别
- 8、java都有哪些加锁方式(synchronized、ReentrantLock、共享锁、读写锁等)
- 9、设计模式(工厂模式、单例模式(几种情况)、适配器模式、装饰者模式)
- 10、maven依赖树,maven的依赖传递,循环依赖
二面
- 1、synchronized和reentrantLock的区别,synchronized用在代码快、方法、静态方法时锁的都是什么?
- 2、介绍spring的IOC和AOP,分别如何实现(classloader、动态代理)
- 3、JVM的内存布局以及垃圾回收原理及过程讲一下,讲一下CMS垃圾收集器垃圾回收的流程,以及CMS的缺点
- 4、redis如何处理分布式服务器并发造成的不一致
- 6、spring中bean加载机制,bean生成的具体步骤,ioc注入的方式
- 7、spring何时创建applicationContext
- 9、介绍ConcurrentHashMap原理,用的是哪种锁,segment有没可能增大?
- 10、解释mysql索引、b树,为啥不用平衡二叉树、红黑树
三面
- 1、Java线程池ThreadPoolEcecutor参数,基本参数,使用场景
- 6、如何用工具分析jvm状态(visualVM看堆中对象的分配,对象间的引用、是否有内存泄漏,jstack看线程状态、是否死锁等等)