![图片[1]-理论与实践结合 解密JVM - 干货网-干货网](https://www.120.team/wp-content/uploads/2023/01/d2b5ca33bd185846.png)
【课程介绍】
JVM 是 Java 程序的运行环境,学习 JVM,方能了解 Java 程序是如何被执行的,为进一步深入底层原理乃至程序性能调优打好基础。通过学习这门课程,你将掌握:1. JVM 内存结构的组成、各部分功能作用,学会利用内存诊断工具排查内存相关问题;2. JVM 的招牌功能-垃圾回收机制是如何工作的,如何进行垃圾回收调优;3. Java 程序从编译为字节码到加载到运行的全流程,各个阶段的优化处理;4. 了解 Java 内存模型相关知识,见识多线程并发读写共享数据时的问题和 Java 的解决方案。* 系统地学习 JVM 内存结构,垃圾回收、字节码与类加载技术。* 在内存结构章节,能够学习掌握 JVM内存溢出现象,堆栈内存结构,利用内存诊断工具排查问题。彻底分析 StringTable的相关知识与性能优化,掌握直接内存分配原理和释放手段。* 在垃圾回收章节,不仅会介绍垃圾回收算法、分代垃圾回收机制,还会重点介绍 G1 垃圾回收器,辨析 Full GC 发生条件,jdk8以来对垃圾回收的优化,以及垃圾回收的调优法则。* 在字节码与类加载技术章节,会从一个 class 文件开始分析其每一字节的含义。学习字节码指令的的运行流程,字节码指令与常量池、方法区的关系。掌握条件分支、循环控制、异常处理、构造方法在字节码级别的实现原理,利用HSDB工具理解多态原理。还会涉及从编译期的语法糖处理,到类加载的各个阶段,直至运行期的各项优化的详细讲解。最后不要错过方法反射优化的底层分析。* 最后的加餐环节是带着你理解 Java 内存模型:见识多线程读写共享数据的原子性、可见性、有序性,以及很多人解释不清楚的 happens-before 规则。当然还不能少了 CAS 和 synchronized 优化。
【课程目录】
第一章:引言1. 什么是 JVM ?2. 学习 JVM 有什么用 ?3. 常见的 JVM4. 学习路线第二章:内存结构1. 程序计数器2. 虚拟机栈3. 本地方法栈4. 堆5. 方法区6. 直接内存第三章:垃圾回收1. 如何判断对象可以回收2. 垃圾回收算法3. 分代垃圾回收4. 垃圾回收器5. 垃圾回收调优第四章:类加载与字节码技术1. 类文件结构2. 字节码指令3. 编译期处理4. 类加载阶段5. 类加载器6. 运行期优化第五章:内存模型1. Java 内存模型2. 可见性3. 有序性4. CAS 与原子类5. synchronized 优化
暂无评论内容