《深入理解 Java 虚拟机·第三版》

2020-11-26

这本书的第一版之前看过,到第三版,内容增加了许多。看完它,花了我一个多月的业余时间,可以说是有空就打开电脑里的 PDF 瞅一会,而且看到觉得有收获时还会画画图、精简知识结构记录到博客里。

 

书的整体情况

700 多页,基本都是干货,适合 Java 进阶。

 

提到了这些知识模块

  • Java 的发展史

  • JVM 的发展史

  • 各种 JVM

  • 编译 JDK

  • 各种内存溢出

  • 内存回收与分配

  • 垃圾回收算法

  • 各种垃圾收集器

  • JVM 故障处理

  • Class 文件结构

  • 字节码指令

  • 类加载

  • 字节码执行

  • 编译优化

  • 从 JVM 角度看 Java 并发

 

最大的感触

Java 相关书籍中,这本花的精力最多,看的时间最长,收获最大。工作写多了业务代码,从 JVM 和字节码层面去把玩程序的运行,有种视野豁然开朗的感觉,乐趣横生。

就书本内容而言,作者的用词非常严谨,而且补充了很多批注,详实且结构清晰,很多章节的末尾都有实战示例,感觉作者有实力又走心。

没有一定高度,很难做到像作者一样,像讲故事一样就把知识输出了。我提炼了书中一些章节的核心知识点,画到思维导图里,方便自己不断加深理解。

收获最大的部分是,自动内存管理、Class 文件的结构、字节码指令、虚拟机的执行机制。有哪些垃圾回收算法?有哪些垃圾收集器?垃圾收集器之间如何配合工作?有哪些常用的 JVM 参数?Java 对象内存的布局是什么样的?OOM 有哪些种类?JVM 的内存区域是如何划分的?有哪些 JVM 性能与故障分析工具?Class 的结构是什么样的?如何被加载的?如何执行的?编译如何被优化的?JVM 是如何支持多线程、支持并发的?感觉是隐约理解了这些问题,算是 JVM 有点入门。

ConstXiong 备案号:苏ICP备16009629号-3