上线了 做商务网站,职业技术培训,网页设计公司有哪些成都,大学生应届毕业生招聘官网1.说在前面
在Java相关岗位的春/秋招面试过程中#xff0c;JVM的学习是必不可少的。本文主要是通过《深入理解Java虚拟机》第三版来介绍JVM的学习路线和方法#xff0c;并对没有过JVM基础的给出阅读和学习建议#xff0c;尽可能更加快速高效的进行JVM的学习与秋招面试的备战…1.说在前面
在Java相关岗位的春/秋招面试过程中JVM的学习是必不可少的。本文主要是通过《深入理解Java虚拟机》第三版来介绍JVM的学习路线和方法并对没有过JVM基础的给出阅读和学习建议尽可能更加快速高效的进行JVM的学习与秋招面试的备战。
2.JVM是什么
在介绍JVM的学习备战路线和方法之前先对JVM是什么做一个介绍通过JVM是什么来理解为什么要学习JVM。
JVM即Java Virtual MachineJava虚拟机简单来说就是一台虚拟的计算机平时编写的Java代码就需要借助JVM来运行。
详细点说JVM内部实现了内存管理例如JVM能够给我们Java代码中的对象进行内存分配、当对象没用的时候进行垃圾回收。而内存是我们操作系统的东西所以JVM就相当于一个中间调度者我们的Java代码编译生成字节码字节码交给JVMJVM调用操作系统的东西来实现代码的运行。过程如下图所示 通过上图不难得出Java“编译一次到处运行”的原因我们的Java代码都是 .java文件通过编译生成 .class文件然后class文件交给JVM其他的执行细节都由JVM来完成所以只要不同的操作系统上都安装了JVM就能够实现“编译一次到处运行”。
到这里大概已经明白了JVM是什么JVM能够干什么当然JVM的重要性也不言而喻所以接下来介绍JVM的学习路线。
3.JVM学习指南
如果是准备面试的话JVM的学习一共需要两个阶段第一阶段主要通过看书来掌握JVM的理论基础和内涵第二个阶段则是系统的看八股文(面试题)来达到一个复习和应对面试的效果
下图展示了《深入理解Java虚拟机》一书的目录我把书的目录按照面试中出现的频率进行了划分。 选读 选读部分主要是JVM实践和调优的部分如果当前面试时间比较紧迫就可以跳过这一个部分。但有时间的话还是推荐阅读这一部分JVM调优相对其它章节难度较大但在校招的面试中是绝对的加分项
了解 了解的部分是书中第六章类文件结构这部分主要介绍了Class文件的结构这部分需要有一定的了解
掌握 掌握部分是第八章的字节码执行引擎以及十二、十三章的并发部分。第八章的字节码分析是比JVM调优稍微简单点的面试加分项书中的分析也十分到位作者几乎已经把知识给你嚼碎了只差你自己送到胃里所以把整个部分归纳为了掌握。至于十二和十三章如果对Java并发编程有过学习推荐仔细阅读会有不一样的收获。但如果备战学习的过程中还没有进行并发编程的学习那么这两章可以先放一放暂时不看在Java并发编程的学习体系中更系统的去学习会更好。
熟悉 第二章和第三章归纳为了熟悉第二章是JVM学习的理论基础所以这一章必须深入理解并记忆。第三章垃圾回收则是面试的大热门并且学习的成本相对上面的JVM调优和字节码指令要低垃圾回收的知识体系结构划分的很清晰所以学习难度相对不大。
书中还有一个第一章第一章讲讲Java发展史然后教你装了个JDK但我们所有人电脑上都已经有JDK了所以第一章可看可不看吧看了拓宽一下视野
看完书之后就可以看面试题了这里推荐库森和Guide的网站网站上归纳了很完善的面试题。
库森https://www.javalearn.cn/#/doc/JVM/面试题
Guidehttps://javaguide.cn/java/jvm/memory-area.html#前言