一共 45 分钟左右,无手撕。1.自我介绍2.项目3.netty 基于什么协议?tcp 和 udp 有哪些 不同 ?udp 可以应用在哪些场景?了解过 websocket 吗?4.如何解决粘包半包问题?5.你说你 netty 自定义了协议,介绍一下。6.arraylist 和 linkedlist,arraylist 线程安全吗,为什么不安全,如何能线程安全,java 中有线程安全的数组集合吗?7.hashmap 扩容机制,线程安全吗?有哪些线程安全的?两个版本的 concurrenthashmap 底层有哪些不同?8.如果一定对象要作为 hashmap 的 key 请问有什么要求?9.equals 和==10.synchronized 修饰函数和 synchronized 修饰代码段有什么不同?synchronized 括号中的对象有哪些要求,是否随便一个对象都可以?11.Collections.synchronizedlist 将 arraylist 包裹了,后面遍历的时候还需要加锁吗,为什么?12.如果一个 java 程序内存占用过高,怎么进行排查?如何区分内存泄漏和大对象?如果是内存泄漏的话如何找出是被谁持有的?13.介绍一下双亲委派机制,为什么要有这个机制?14.介绍一下垃圾回收算法。反问1.业务2.暑期实习面试流程感觉和面试官聊的还可以,最后反问结束面试官还提醒我参加晚上的笔试。结果 20 分钟后发邮件流程结束,取消笔试