JVM是大多数Java学习 小白的一道坎,同时也是工作2到3年程序员面试的高频点。通过学习JVM,可以深入理解代码从编译到加载的过程、内存中对象的创建与垃圾回收、日常开发中快速定位性能问题等,当然也是面试不可缺少的加分项。
整理分享的20道JVM面试重点问题及十大模块知识点学习笔记,如果你也想要,文末有免费领取方式。
一、20道JVM面试重点问题(附答案)
-
1. 内存模型以及分区,需要详细到每个区放什么?
-
2. 堆里面的分区:Eden,survival (from+ to),老年代,各自的特点
-
3. 对象创建方法,对象的内存分配,对象的访问定位
-
4. GC 的两种判定方法?
-
5. SafePoint 是什么?
-
6. GC 的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用在什么地方,如果让你优化收集方法,有什么思路?
-
7. GC 收集器有哪些?CMS 收集器与 G1 收集器的特点
-
8. Minor GC 与 Full GC 分别在什么时候发生?
-
9. 几种常用的内存调试工具:jmap、jstack、jconsole、jhat
-
10. 类加载的几个过程?
-
11.JVM 内存分哪几个区,每个区的作用是什么?
-
12.如和判断一个对象是否存活?(或者 GC 对象的判定方法)
-
13.简述 java 垃圾回收机制?
-
14.java 中垃圾收集的方法有哪些?
-
15.java 内存模型?
-
16.java 类加载过程?
-
17. 简述 java 类加载机制?
-
18. 类加载器双亲委派模型机制?
-
19.什么是类加载器,类加载器有哪些?
-
20.简述 java 内存分配与回收策率以及 Minor GC 和Major GC?
二、十大模块知识点学习笔记
-
第一个模块:JVM内存结构
-
第二个模块:HotSpot虚拟机对象探秘
-
第三个模块:垃圾收集策略与算法
-
第四个模块:HotSpot垃圾收集器
-
第五个模块:内存分配与回收策略
-
第六个模块:JVM性能调优
-
第七个模块:类文件结构
编辑切换为居中
添加图片注释,不超过 140 字(可选)
-
第八个模块:类加载的时机
-
第九个模块:类加载的过程
-
第十个模块:类加载器
三、附带福利
今天小编要说的JVM就这么多,篇幅有限,就不给大家展示JVM的学习路线大纲(xmind)、JVM性能优化大纲(xmind)以及JVM学习书籍了,上图所示的全部JVM学习笔记,点击下方小卡片,即可免费领取!!!