携程一面后端开发(08.20,45min)
携程一面(08.21 下午18:00-18:45)
1. 自我介绍
2. Map介绍,put的流程,怎么比较key值是否已经存在
3. Map是不是线程安全的,线程安全情况下使用什么集合
4. Jvm内存区域介绍;刚才你说大部分对象分配在堆中,什么情况下对象不分配在堆中
5. Jdk8之后为什么废除永久代,改用元空间
6. 垃圾回收器介绍
7. Cms垃圾回收器介绍,重新标记怎么操作的,不可能在重新扫描一遍GCRoot集合吧
8. 你说cms存在内存碎片严重的问题,当内存碎片严重会发生什么(起始问法没理解,后来才知道是要回答采用serial回收器做备选方案)
9. G1回收器介绍
10. 多线程安全有哪些实现方式
11. 你说到的Synchronized,还说它做了优化,具体说说
12. 对象头包括什么,存在哪里
13. Volatile作用,和synchronized的区别
14. 为什么volatile能保证可见性
15. 数据库事务四大特性
16. 项目中你使用了SpringBoot的哪些功能,为什么使用SpringBoot,它有哪些优势
17. Spring中属性注入有哪些方式
18. 采用autowired注解的bean什么时候注入到容器中
19. Redis实现分布式锁你了解过吗;为什么采用setnx能实现分布式锁
20. 分布式cap理论了解吗
21. 来写道题,一个有序数组,查找目标元素是否在数组中,在的话返回下标,不在的话返回-1(对不起,您再说一遍,我没听错??)
22. 来写个DCL单例;为什么要采用volatile修饰
#携程22届秋招面试##面经##携程#