1. 为什么选择Java?2. 接口和抽象类有什么区别?3. 接口中可以实现具体方法吗?(jdk1.8之后使用default)4. IO流5. Java容器6. 创建线程的方式7. 线程有哪些状态?8. sleep和wait的区别9. 怎么保证多线程的安全?10. 什么是反射?11. TCP和UDP的区别12. 介绍熟悉的设计模式13. SpringMVC的运行流程14. 什么是springboot15. MyBatis中的# 和 $的区别16. 数据库三范式17. ACID18. MySQL中char和varchar的区别19. MySQL常用的引擎20. 你了解JVM吗?21. 类加载过程22. 垃圾回收器23. Linux用的什么版本?24. Linux查看日志用什么命令?25. centos装软件用什么命令?26. 反问 总结:基本都是八股,对于面试小白可以拿来练手,检验八股背的咋样,总体难度不大。