转自:https://github.com/Snailclimb/Java_Guide
下面是按jvm虚拟机知识点分章节总结的一些jvm学习与面试相关的一些东西。一般作为Java程序员在面试的时候一般会问的大多就是Java内存区域、虚拟机垃圾算法、虚拟垃圾收集器、JVM内存管理这些问题了。这些内容参考周的《深入理解Java虚拟机》中第二章和第三章就足够了对应下面的深入理解虚拟机之Java内存区域:和深入理解虚拟机之垃圾回收这两篇文章。
常见面试题
介绍下Java内存区域(运行时数据区)。
对象的访问定位的两种方式。
如何判断对象是否死亡(两种方法)。
简单的介绍一下强引用、软引用、弱引用、虚引用(虚引用与软引用和弱引用的区别、使用软引用能带来的好处)。
垃圾收集有哪些算法,各自的特点?
HotSpot为什么要分为新生代和老年代?
常见的垃圾回收器有那些?
介绍一下CMS,G1收集器。
Minor Gc和Full GC 有什么不同呢?
- JVM调优的常见命令行工具有哪些?
- 简单介绍一下Class类文件结构(常量池主要存放的是那两大常量?Class文件的继承关系是如何确定的?字段表、方法表、属性表主要包含那些信息?)
简单说说类加载过程,里面执行了哪些操作?
对类加载器有了解吗?
什么是双亲委派模型?
双亲委派模型的工作过程以及使用它的好处。
推荐阅读
《深入理解 Java 内存模型》读书笔记 (非常不错的文章)
欢迎关注我的微信公众号:”Java面试通关手册”(一个有温度的微信公众号,期待与你共同进步~~~坚持原创,分享美文,分享各种Java学习资源):