前言:
激动的心,颤抖的手,就想往大厂走一走,这是我一直以来的夙愿,也是皇天不负有心人了,就在上个月的月末,还每天沉浸在crud中的我,突然接到了抖音后端的面试邀请,简历是在10月份投递的,这么久就像一颗石子投进了大海一样,没有溅起丝毫波澜,甚至我都已经忘掉了我还投过简历,我怀着满满的信心去参与了这次面试,胸有成竹,觉得自己必定可以拿下offer,没想到惨遭面试官一顿血虐并告诉我下次一定!
一面
- CtrlC可以终止程序,我们是否可以在程序终止的时候做一些别的操作?
- tcp四次挥手
- 进程和线程的区别
- 进程间通信的方法都有什么
- 100Mbps的带宽三个人使用,每人50Mbps,tcp怎么保证速度的
- 1000qps单机怎么处理?
- 算法题:一个超级长的数字(有几十位那种),允许进行任意多次的任意两位交换,得到的比他大的最小的数字是多少
- 简述 synchronized 和 java.util.concurrent.locks.Lock 的异同?
- 概括的解释下线程的几种可用状态
- 什么是 ThreadLocal?
- run() 和 start() 区别。
- 请说出你所知道的线程同步的方法。
- 线程调度和线程控制。
- 什么是线程饿死,什么是活锁?
- 多线程中的忙循环是什么?
- volatile 变量是什么?volatile 变量和 atomic 变量有什么不同?
二面
- 为什么想来抖音
- 简述分页分段机制
- http的501,502,503,504什么意思
- 操作系统进程状态有什么
- nginx的location是什么
- http和https的区别,为什么不能从http升级为https
- pyc是什么,什么时候生成
- 算法题:实现一个LFU***,要求实现set和get方法,复杂度为O(1)。
- (该题的LFU***是一个存储空间,有容量,是整数n,存key-value对,每访问一次这个kv对的频率就加一,如果新set kv对 的时候,已经达到容量上限,删除频率最低的kv对)
- GC 是什么? 为什么要有 GC?
- 简述 Java 垃圾回收机制。
- 如何判断一个对象是否存活?(或者 GC 对象的判定方法)
- 垃圾回收的优点和原理。并考虑 2 种回收机制。
- 垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗? 有什么办法主动通知虚拟机进行垃圾回收?
总结:
通过此次的面试呢,我也是知道了自己的不足之处和需要改进的地方,虽然想进大厂的夙愿没能实现,不过我还是要感谢此次面试经历!另外呢,我觉得此次面试的最重要的问题就是我并没有温故知新,并没有去吧这个当成一回事,甚至都没有多看些面试题,我也是乘着这段时间网罗了今年来各家大厂的高频面试题,现在也拿出来分享给大家,希望大家不要像我一样无头苍蝇乱撞一气,问啥啥不会,面试就要跪!我呢,也是要重拾信心,重新振作起来,多啃几分面试题,再战大厂!祝大家offer多多!
最全Java后端高级Java必考题范围与答案
答案获取方式
需要资料劳烦一键三连添加下方图片免费获取