
1.开篇词
├──开篇词 _ 为什么我们要学习Java虚拟机?
2.模块一:Java虚拟机基本原理
├──01 _ Java代码是怎么运行的?
├──02 _ Java的基本类型
├──03 _ Java虚拟机是如何加载Java类的_
├──04 _ JVM是如何执行方法调用的?(上)
├──05 _ JVM是如何执行方法调用的?(下)
├──06 _ JVM是如何处理异常的?
├──07 _ JVM是如何实现反射的?
├──08 _ JVM是怎么实现invokedynamic的?(上)
├──09 _ JVM是怎么实现invokedynamic的?(下)
├──10 _ Java对象的内存布局
├──11 _ 垃圾回收(上)
├──12 _ 垃圾回收(下)
3.模块二:高效编译
├──13 _ Java内存模型
├──14 _ Java虚拟机是怎么实现synchronized的?
├──15 _ Java语法糖与Java编译器
├──16 _ 即时编译(上)
├──17 _ 即时编译(下)
├──18 _ 即时编译器的中间表达形式
├──19 _ Java字节码(基础篇)
├──20 _ 方法内联(上)
├──21 _ 方法内联(下)
├──22 _ HotSpot虚拟机的intrinsic
├──23 _ 逃逸分析
├──【工具篇】 常用工具介绍
4.模块三:代码优化
├──24 _ 字段访问相关优化
├──25 _ 循环优化
├──26 _ 向量化
├──27 _ 注解处理器
├──28 _ 基准测试框架JMH(上)
├──29 _ 基准测试框架JMH(下)
├──30 _ Java虚拟机的监控及诊断工具(命令行篇)
├──31 _ Java虚拟机的监控及诊断工具(GUI篇)
├──32 _ JNI的运行机制
├──33 _ Java Agent与字节码注入
5.模块四:黑科技
├──34 _ Graal:用Java编译Java
├──35 _ Truffle:语言实现框架
├──36 _ SubstrateVM:AOT编译框架
6.尾声
├──尾声 _ 道阻且长,努力加餐
请先 !