字节跳动Java面经(已offer)
5.15 一面(3点开始,80分钟)
1.自我介绍,聊了聊学校近况
2.Java 集合框架,看了哪些源码,arraylist、linkedlist原理,让你实现一个 hashmap 机会如何设计(没让手写😂)
3.线程池的执行过程、核心参数以及常用的几个线程池(感觉每次面试都会问😂)
4.JVM 的相关知识,OOM 如何定位,说几个虚拟机指令以及虚拟机栈可能会发生什么错误,四种引用类型
5.Java 并发,synchronized 性能为什么提高了(锁升级过程),与 Java 的 lock 有什么区别以及使用场景
6.网络,输入 www.baidu.com 都会发生什么
7.http 报文结构,头部都有哪些字段
8.进程与线程,了解协程吗(大概说了下)
9.死锁了解吗,说一下条件,如何解决
10.让写一下链表实现插入方法(顺序不在这里,忘了在哪了,突然想起来了),查询效率呢,怎么优化
11.写个算法,给一个表达式的字符串(+-*/),算出字符串的结果,没考虑括号说了下括号的思路
12.问问题
面试小哥很厉害,比较有耐心。没回答上来的都给耐心讲解,引导着问问题,由浅入深体验极佳😀
面完让稍等一下,十分钟后二面
5.15 二面(45分钟)
1.面试官看着就很厉害,在家办公感觉很忙,上来先问实习的时间以及时长,说最好半年
2.没有自我介绍直接开始,先是网络,TCP 三次握手四次挥手,time_wait 和 close_wait 具体干什么,为什么要三次两次不行吗,有大量连接处于 time_wait 的原因,TCP 是长连接还是短连接
3.Https 了解吗,说一下整个过程(对称加密,非对称加密),与 http 的不同点
4.进程线程又问了,进程间通信方式(剩下的想不起来)
5.数据库部分知识,手写一个 SQL (子查询 感觉主要看 group by 和 having)
6.算法题,最长公共连续子串
一二面顺序可能也是混乱的,记不清楚了,二面面试官感觉好忙啊,写题的时候,他就在忙着敲什么,感觉好不容易啊,一边得面试还在工作😂,体验较好,部分问题也引导着问
第二天写的面经所以一二面问题可能是混乱的!