百度java面经
1. 我们来聊聊Java的集合框架吧。能详细说说ArrayList、LinkedList和HashMap各自的特点吗?另外,HashMap在什么情况下会转成红黑树,为什么要这么做?红黑树本身有什么优缺点?
2. Spring, Spring MVC 和 Spring Boot,这三者之间是什么关系?你能理一下吗?
3. 我们常说的IoC,也就是控制反转,它的核心思想是什么?你是怎么理解的?
4. 在Spring里,@Autowired和@Resource这两个注解有什么区别?另外,我们经常用到的单例模式,你觉得它主要的优点是什么?
5. 接口(Interface)和抽象类(Abstract Class),它俩在使用场景上有什么区别?能结合一些你实际开发中的例子说说吗?
6. 聊聊Spring的事务管理吧,你对它有哪些了解?
7. Java里的`final`关键字都能用在哪些地方?它修-饰一个ArrayList或者一个String的时候,具体表现有什么不同?
8. 能详细介绍一下线程池的工作原理吗?在什么场景下你会考虑使用线程池?
9. 最后来做一道算法题吧:在二叉树中找到两个节点的最近公共祖先。