Java 中线程的状态有哪些?wait 和 sleep 方法的区别是什么?线程之间共享什么资源?一个 Java 程序的执行至少需要几个线程?如果起了 2 个线程,当其中一个 OOM 了,另一个线程会受影响吗?讲讲线程池的创建?线程池的核心参数?线程池中,工作队列有哪几种?线程池中的拒绝策略有哪些?Synchronized 的底层实现原理?Java 中的 GC(垃圾回收机制)?如何判断对象是否可回收?Java 进行类加载的时候,选择什么模型来实现?不遵循双亲委派机制的场景有哪些?HashMap 的底层实现原理?讲讲使用开放寻址法来解决 Hash 冲突?事务的四大特性?MySQL 是怎么实现事务的?保证事务的隔离性加的锁是什么锁?索引底层的数据结构是什么?举一个例子说明一下聚簇索引和非聚簇索引?字段 sex 为什么不适合使用索引?SQL 语句执行得很慢,如何分析和优化呢?手撕代码:两个队列实现一个栈