携程Java一二面面经
一面
1.了解集合吗?
哪些类实现collection接口、map接口
那个类具有2种结构?一开始没明白啥意思,后面知道比如linkedlist,包含list和queue
delayqueue了解么?实现原理和应用场景:火车票下单30分钟内支付
blockingqueue了解吗
hashmap和treemap区别、实现原理、结构对比、jdk1.7和jdk1.8
hashmap扩容机制、初始容量随便设个数、比如7可以吗
2.了解jvm么?
jvm结构有哪些?哪些部分是线程私有的,哪些是共享的
你说到堆涉及gc,如何判断对象需要被gc、可达性分析中的gcroots可能是哪些对象
垃圾回收器介绍下,cms存在什么问题、有哪些候补的措施
为什么出现g1、g1的好处、为什么划分region,如果region对象被其他region引用,是否需要扫描整个堆来判断是否对象是否存活?
了解jvm调优吗
3.了解多线程吗?
synchronized原理,做了哪些优化(锁升级)
volatile原理
hashmap线程安全吗?怎么让他线程安全、concurrenthashmap原理
4.了解数据库吗?
了解索引吗?为什么索引快、索引结构、为什么选用b+而不是b或者avl树
有过索引失效的情况吗
如何分析sql语句、知道原因了如何优化
5.了解mq吗
activemq是推还是拉
6.了解redis吗
基本数据结构+举例
如果我限制一分钟只能调用60次接口,怎么用redis实现
7.了解算法吗
排序算法:插入的原理、插入的优化、希尔增量
dfs:二叉树的遍历(前中),如何找到二叉树每层元素的最大值
8.反问,携程有几面,说二面,应该面试完就能有二面通知,我听成一会就二面,面试官愣了一下,问我一会有时间吗,我说有,让我别退出,一会而他主管来面我
二面
1.自我介绍
2.项目介绍、项目难点、项目角色、是否有出现分歧、怎么解决
3.项目中有哪些最让你开心/收获的地方、哪些是自学的、怎么自学、如何查看文档
4.反问,我有哪些需要改进的地方,说项目再说的深一点、具体一点、具体到某个具体的场景
二面被网络针对了,一会面试官掉线、一会我掉线、逼得最后用手机语音面试。。。