一面:
1:上来就手写代码,int转String(我直接用java写了,面试官说用C实现,汗) 2:GC的回收机制(我详细说了一些jvm内存区,垃圾回收算法及垃圾收集器,这个回答的还可以) 3:Socket四次挥手,如果Server端先关闭,其处于什么状态 4:Socket的常用的线程模型 (这个画了一下Reactor的单线程,多线程以及主从模型的 示例图) 然后问了利用这些模型开发出来的开源框架,答了Netty,Mina框架,说不是特别了解,面试说没事
二面:
1:自我介绍 2:Socket四次握手详细图解,以及各个状态
3:单例模式 (这个可以直接用静态内部类实现,线程安全,效率又高)
4:数据库隔离级别,以及可以解决什么问题
5:讲一下印象最深的项目
6:调优jvm ,用哪些工具检测
7:讲解一下类加载机制(双亲委托模型),然后如果用自定义类加载器不断加载jar包,不使用,会导致什么位置内存溢出(答:方法区,永久代)
8:MySql的问题: JDBC如何优化 MYSql的索引实现方法 以及事务的一些问题