有些问的比较细,会引导着回答,可惜我太菜了,汗流浃背八股1.HashMap如何实现2.红黑树比链表的优点是什么3.建树开销是一次,查询是无限次,那么建树开销的可以被均摊的,为什么不一开始就用红黑树4.怎么理解责任链模式5.享元模式6.怎么理解AOP7.除了AOP,还有其他方式能达到这种功能吗(比如统计函数的耗时)8.注解可以实现吗?9.知道@Data注解吗,作用于哪个阶段10.Data注解作用于编译期,会向类插入代码,那通过注解也能实现统计函数的耗时功能。与AOP的方式相比,具体有什么差异呢,各自优缺点?11.TCP协议的状态(三次握手、四次挥手的转换状态)12.握手/挥手的初始序列号是多少,如何生成的13.tcp握手时,还交换了哪些信息 ——说了滑动窗口大小14.然后引导,TCP头部有哪些字段?选项有哪些字段15.Redis的数据结构有哪些16.BitMap的使用场景17.String的底层存储结构?18.Redis的某个key的value是1,那么底层数据是什么?19.zset除了跳表,还有其他的底层存储格式吗20.ThreadLocal实现原理21.Integer a=1,Integer b=1, a==b?手撕:以k个为一组,链表反转总结:很多八股掌握的不够深入,经不住拷打#面经##美团#