1. 自我介绍面试
2. HashMap(本身说的很细,面试官说了句挺不错,问你几个很细的问题)算法
3. HashMap1.8以后有没有循环依赖的问题(我说改为尾插了,应该没了,面试官笑着说我记得好像有,我笑着真的吗,我下去再看看,俩人很开心)sql
4. reHash那段源码你看没有(没有)设计模式
5. 默认长度是16,那我初始大小给5他会是多少安全
6. 长度为何是2的幂次网络
7. HashMap翻转链表的时候原来在3位置的元素,他会到哪(记不太清了,面试官跟我讲可能在3也可能在6)session
8. ConcurrentHashMapjvm
9. 说1.8它变成了Node+Cas+Syn的方式,你讲下CAS(我顺着ABA也说了一遍)分布式
10. ABA问题是比较经典。但还有两个缺陷你知道吗(不知道,面试官跟我讲,一个是cpu占用过高,一个是每次只能修改一条数据)ide
11. Synchronized讲一下(本身忘了说最关键的monintenter了,面试官提醒对象头里边有什么你能说一下嘛)
12. Synchronized原子可见有序的原理
13. Java对象头里还有哪些东西你记得吗(很久之前看过,后来没注意,忘了)
14. 最近在看什么书(深刻理解Java虚拟机第三版的,是深刻理解仍是深刻剖析呀,我说深刻理解,是蓝色的吗,我说紫色的,你拿过来我看看,我笑着拿到摄像头前,面试官:哦哦,挺好的,我后边也买一本)
15. 这本书收获最大的地方在哪(排查OOM异常)
16. Redis的数据类型讲一下
17. Mysql事务隔离级别(幻读是怎么解决的,我记得是加锁,怎么加锁忘了,面试官提醒是阶段锁)
18. JDBC你还记得多少(两我的对着屏幕笑,我说很久没用了,就实习的时候有个功能要用Connection创建链接。面试官:恩,创建链接以后准备sql,执行sql,最后干吗咧,我说关闭链接)
19. 不关闭链接会发生什么问题(从网络角度来说,会有大量的 CLOSE_WAIT状态,由于没有及时的释放资源,从jvm来说,可能会形成内存泄漏)
20. 项目里边用的JWT是 Java Web Token的意思吗(Json Web Token)
21 你这个JWT在分布式里边会不会出现失效的问题(分布式我不太了解,我知道session可能会在分布式里边出现失效,但个人理解应该不会失效,阿巴阿巴阿巴)
22. 哦,分布式你不太了解,那这个token会不会出现被破解的问题呢。(emmm,大几率不会,把token加密的过程说了一遍,最后弱弱的,由于用了md5算法,虽然如今好像md5也能够破解了,可是双重加密了,应该破解很麻烦)
23 面试官跟我科普了一下如今大厂网络安全的一些作法
24. Spring 简单讲一下
25 Spring AOP的原理
26 Spring里边用到了哪些设计模式
27 线程池以及线程池的核心参数,做用
28. 四个拒绝策略(说了三个,最后一个死活想不起来,面试官微笑提醒)
29. 反转链表
30. 连续子序列的最大和
感受本身有点视屏面试写算法恐惧症,面试一写算法就紧张。面试官让我放松,而后一直提醒,最后终于作出来了。
反问:
q:算法对结果影响大吗?
a:哈哈哈哈,不用纠结,前面基础挺好的,你这算法也作出来了嘛。后边好好准备一下,二面毕竟也要写。(千感万谢)
面试官反问:为啥想来北京,我看你在成都啊,成都挺好的
我:就成都互联网生态扯了几句
最后谢谢师兄!!!!祈祷二面师兄算法简单点。。啊啊啊啊啊啊,给我个offer吧