课程目录
第1章 课程导学与准备工作
本章主要介绍为何要带大家从零开始学习一门JVM基础与实战相结合的系统课程,之后会为大家介绍本课程内容具体安排,最后给出如何学好这门课程的一些学习建议。希望大家都能通过这门课程,学有所成,学有所归。 第2章 认识JVM规范
本章首先从三种认知角度带你了解JVM以及JVM的组成,帮你建立JVM知识体系,再通过阅读JVM规范来带大家掌握Class文件的格式,实现Class文件字节码的阅读,之后带大家进入ASM的开发,学会动态创建Java类。 第3章 类加载、连接和初始化
本章将带大家从类加载到JVM再到类卸载,剖析完整过程中的每个步骤的细节功能和核心技能,结合实战,重点需要大家理解类加载、类加载器,双亲委派模型,理解并掌握各种主动使用类的初始化时机等。 第4章 内存分配
本章先带大家系统学习Java的内存分配模型,堆内存核心内容,内存分配相关的各种参数的配置和使用,然后带大家掌握各种内存溢出,学习如何使用MAT工具进行内存溢出的分析和问题查找。 第5章 字节码执行引擎
本章先带大家深入Java栈,理解栈帧、运行期操作数和局部变量表之间的交互关系,再带大家剖析方法调用,掌握静态分派和动态分派,最后通过实战带大家理解如何执行方法中的字节码指令。 第6章 垃圾回收
本章先来掌握垃圾回收的不可达算法、垃圾判断步骤、GC类型、引用类型等基础内容,再带大家深入垃圾回收的算法,包括标记清除法、复制算法、标记整理等,最后带大家掌握各种垃圾收集器,包括串行收集器、并行收集器、新生代Parallel Scavenge收集器、CMS、G1等。… 第7章 高效并发
本章先来分析Java内存模型,内存间的交互操作,然后学习多线程的可见性、有序性和指令重排、线程安全的处理方法,最后带大家学习自旋锁、锁消除、锁粗化、轻量级锁、偏向锁等锁优化。 第8章 性能监控与故障处理工具
本章带你掌握实际工作中的高频技能,包括jps、jinfo、jstack、jmap、jstat、jstatd、jcmd等命令行工具和jconsole、 jmc、visualvm等图形化工具,最后结合实际操作带你理解两种远程连接方式:JMX、jstatd。 第9章 【实战】JVM调优
本章将从调什么、如何调、调的目标是什么三个方面带你掌握如何进行JVM调优,接着传授你JVM调优策略、调优冷思考、调优经验、如何分析和处理内存溢出,最后我们将综合应用这些知识,在给定的应用上,实战JVM调优。 第10章 面试加油站
本章以面试官视角带你剖析JVM面试问题,掌握回答技巧,轻松搞定面试中涉及到JVM相关问题,为大家的面试助力。 第11章 课程总结
本章将带大家回顾总结课程重点难点