java 岗
一面
面试是使用牛客的面试系统,面试完后当天或者隔天会给回复(通常是晚上6点~9点),然后电话邀约下一场面试;
下一场面试会在隔周,等的时间有点长,但是都会有回复(有回复好评)
- 由项目入手,根据项目问实现细节
- 多态的理解,静态多态和动态多态的字节码层面的原理,调用类静态方法在 jvm 层面的过程
- synchronized 与 aqs的区别
- mysql 索引 联合索引 最左匹配
- 说一下聚集索引的实现,b+ 树,一个结点的大小
- mysql 的 mvcc 隔离级别
- 有没有看过 redis C语言的源码?说一下 redis 十字链表 跳跃表
- 项目用什么接口管理软件?postman 是怎么管理接口的?
- 项目如果要修改接口怎么做?例如加一个参数,或者删除一个参数
二面
- 项目中的数据是如何存储的
- jvm 运行时期的内存结构
- 多线程统计 1w 个文件里面单词出现次数最多的那个
- 用数组实现栈,并且实现一个方法求栈中最大值,要求 O(1),且压栈、出栈也是 O(1)
- 写一个单例(我写了静态内部类那个)
- 模拟商品抢购,用基础的线程模拟并发(线程安全问题)<