1. 项目介绍2. 问我实习能多久3. java基本数据类型4. 包装类型与基础类型有什么区别5. 拆箱、装箱的时机6. wait() 和 sleep() 的区别7. 哪一个是线程共享的?8. synchronized关键字一般作用在什么上面9. 不同的作用域起到什么样的效果10. volatile关键字11. 在你的项目中用到了哪些集合12. ArrayList 和 HashSet 的区别13. ArrayList、HashMap 的底层数据结构14. HashMap 和 ConcurrentHashMap 的区别15. 哈希冲突的处理办法16. 用过哪些类型的线程池17. 线程池包含哪些参数18. 拒绝策略有哪些19. 线程池的工作流程20. JVM 内存模型21. 堆内存模型划分22. 程序计数器用来存储哪些内容23. 栈的作用24. new一个对象怎么在内存模型划分存放25. 类加载放在哪里26. GC你熟悉哪些27. G1回收器有哪些步骤,每个步骤做哪些