一面(25min)主要问基础
0.自我介绍
1.ArrayList和LinkedList(区别,优缺点,扩容等)
2.HashMap(hash冲突,扩容,与concurrentHashMap区别)
3.new String("ab")创建了几个对象
4.StringBuilder和StringBuffer区别,举个使用场景的例子
5.jvm内存区域有哪几块,存放什么东西
6.垃圾回收算法有哪些
7.Eden区和Survivor区
8.线程的创建方式有几种
9.线程池的参数有哪些
10.什么时候会创建一个新的工作线程
11.Lock锁你用过哪些
12.讲一下区别
13.synchronized和Lock区别
14.框架用过哪些
15.讲一下spring boot的动态代理怎么实现的
16.MySQL的索引相关(主键索引,联合索引,最左匹配等等)
17.MySQL关键字考察,这里面试官会跟我说一些需求,问我会用到哪些关键字(limit,join,group by 等等)
应该还有一些,不过不太记得了,后面是反问
二面(30min)全程问项目
0.自我介绍
1.你选一个项目详细讲一下你都做了些什么(这里选了一个科研项目,可能面试官不太感兴趣)
2.你遇到的困难怎么解决的
3.你觉得做完之后对你的提升在哪里
4.你觉得这个项目还有没有值得优化的地方
5.你还有一个spring boot的项目,你讲讲这个吧
6.有用过什么关系型数据库吗
7.你的数据库表都有那些表
8.了解数据库的分库分表吗
9.假设给你一亿个用户信息和一亿个交易信息,你怎么设计数据库和表
10.你用redis存过热点数据,用的什么数据结构
11.热榜用的什么数据类型,底层实现是什么
12.你用过mybatis-plus,你说说和mybatis的区别
13.你学新的技术是怎么学的
14.了解内存泄漏吗?怎么排查?用什么工具?
15.反问
9.19hr面
聊聊天,问了期望薪资
9.21资料审核