携程面试(9-7)
携程面试体验不好,说话都不利索,然后全程照着面经问,摄像头不敢开,还说这边不能开。可能是我回答的稀碎(借口:1,最近生病了,没怎么看了,2,不太想去也),所以印象不好,忍不住吐槽,然后还有一点就是完全就是一问一答,我扩展都不要我说,就说我问什么你说什么,可能就总结了几个题目和答案吧,自己也不懂细节,所以不想讨论,最后反问的时候我问其中一个知识点他竟然不会,笑死了,就这种都能干开发?(纯属自己吐槽,不接受辩论)但是还是总结一下给想去的友友们借鉴。
1Object有哪些方法?
2clone()是深拷贝还是浅拷贝
3深拷贝和浅拷贝的区别
4深拷贝怎么实现?深拷贝的三种实现方式分别是:1、递归递归去复制所有层级属性;2、用JSON对象的parse和stringify实现;3、借用JQ的extend方法。(我说不知道)
5List有哪些实现?回答ArrayList和LinkedList
6,场景,有一堆数据不知道大小,ArrayList存好还是LinkedList存好,我说两者都可以,他说ArrayList不要扩容吗,我说那用LinkedList吧。
7.场景:存储对象类型为person的对象,然后里面有name属性,需求是按照name查找,用哪个存好,我说两者都是O(n),都可以
8,那你优化一下上面的数据结构,我说用hashmap存储吧
9,map有哪些实现类?
10,hashmap创建一个初始化为10的对象之后容量会是多少?
11,数组扩容为什么是2的倍数
12,手撕;用两个栈实现队列的功能,(三分钟解决,早知道拖一点时间了,就纯粹凑时间一直问一直问)
13,一个数据,两个线程同时去改,用乐观锁怎么实现修改安全
14,compareandset是代码层面的吗?没搞懂想问什么(全程我反问他就说这个是要你来回答的,不要问我)
15,数据库层面的话怎么实现上述问题?(我也没搞懂,数据库不是有隔离级别吗)
16,spring和springboot的区别
17,springboot为什么能自动配置好相关的东西?
18,springboot componentScan会扫描哪些包,
19,我想把外部的一个功能整合进来怎么让容器进行管理?我瞎说一顿
20,configure注解用来干嘛的?Bean注解用来干嘛的?
21,线程池核心参数有哪些?
22,使用线程池的目的