课程目录
├─day01
│ 01_什么是jvm.mp4
│ 02_学习jvm有什么用.mp4
│ 03_常见的jvm.mp4
│ 04_学习路线.mp4
│ 05_程序计数器_作用.mp4
│ 06_程序计数器_特点.mp4
│ 07_栈.mp4
│ 08_栈的演示.mp4
│ 09_栈_问题辨析1.mp4
│ 10_栈_问题辨析2_线程安全.mp4
│ 11_栈_问题辨析2_线程安全.mp4
│ 12_栈_内存溢出1.mp4
│ 13_栈_内存溢出2.mp4
│ 14_线程诊断_cpu占用高.mp4
│ 15_线程诊断_迟迟得不到结果.mp4
│ 16_本地方法栈.mp4
│ 17_堆_定义.mp4
│ 18_堆_内存溢出.mp4
│ 19_堆_内存诊断_jmap.mp4
│ 20_堆_内存诊断_jconsole.mp4
│ 21_堆_内存诊断_jvirsualvm.mp4
│ 22_方法区_定义.mp4
│ 23_方法区_内存溢出.mp4
│ 24_方法区_内存溢出.mp4
│ 25_方法区_常量池.mp4
│ 26_方法区_运行时常量池.mp4
│ 27_StringTable_面试题.mp4
│ 28_StringTable_常量池与串池的关系.mp4
│ 29_StringTable_字符串变量拼接.mp4
│ 30_StringTable_编译期优化.mp4
│ 31_StringTable_字符串延迟加载.mp4
│ 32_StringTable_intern_1.8.mp4
│ 33_StringTable_intern_1.6.mp4
│ 34_StringTable_面试题.mp4
│ 35_StringTable_位置.mp4
│ 36_StringTable_位置.mp4
│ 37_StringTable_垃圾回收.mp4
│ 38_StringTable_调优.mp4
│ 39_StringTable_调优.mp4
│ 40_StringTable_调优.mp4
│ 41_直接内存.mp4
│ 42_直接内存_基本使用.mp4
│ 43_直接内存_内存溢出.mp4
│ 44_直接内存_释放原理.mp4
│ 45_直接内存_释放原理.mp4
│ 46_直接内存_释放原理.mp4
│ 47_直接内存_禁用显式回收对直接内存的影响.mp4
│
├─day02
│ 01_垃圾回收概述.mp4
│ 02_判断垃圾_引用计数.mp4
│ 03_判断垃圾_可达分析.mp4
│ 04_判断垃圾_可达分析_根对象.mp4
│ 05_五种引用_强软弱.mp4
│ 06_五种引用_虚终.mp4
│ 07_软引用_应用.mp4
│ 08_软引用_引用队列.mp4
│ 09_弱引用.mp4
│ 10_回收算法_标记清除.mp4
│ 11_回收算法_标记整理.mp4
│ 12_回收算法_复制.mp4
│ 13_回收算法_小结.mp4
│ 14_分代回收.mp4
│ 15_分代回收.mp4
│ 16_分代回收.mp4
│ 17_GC_相关参数.mp4
│ 18_GC_分析.mp4
│ 19_GC_分析.mp4
│ 20_GC_分析_大对象_oom.mp4
│ 21_垃圾回收器.mp4
│ 22_垃圾回收器_串行.mp4
│ 23_垃圾回收器_吞吐量优先.mp4
│ 24_垃圾回收器_响应时间优先.mp4
│ 25_G1_简介.mp4
│ 26_G1_新生代回收.mp4
│ 27_G1_新生代回收+CM.mp4
│ 28_G1_混合回收.mp4
│ 29_G1_FullGC概念辨析.mp4
│ 30_G1_新生代_跨代引用.mp4
│ 31_G1_remark.mp4
│ 32_G1_字符串去重.mp4
│ 33_G1_类卸载.mp4
│ 34_G1_巨型对象.mp4
│ 35_G1_动态调整阈值.mp4
│ 36_G1_小结.mp4
│ 37_GC调优.mp4
│ 38_GC调优.mp4
│ 39_GC调优.mp4
│ 40_GC调优_新生代.mp4
│ 41_GC调优_新生代.mp4
│ 42_GC调优_新生代.mp4
│ 43_GC调优_新生代_幸存区.mp4
│ 44_GC调优_新生代_幸存区.mp4
│ 45_GC调优_老年代.mp4
│ 46_GC调优_案例1.mp4
│ 47_GC调优_案例2.mp4
│ 48_GC调优_案例3.mp4
│
├─day03
│ 01-类加载-概述.mp4
│ 02-类文件结构.mp4
│ 03-类文件结构-常量池1.mp4
│ 04-类文件结构-常量池2.mp4
│ 05-类文件结构-常量池3.mp4
│ 06-类文件结构-访问标识和继承信息.mp4
│ 07-类文件结构-field.mp4
│ 08-类文件结构-method-init.mp4
│ 09-类文件结构-method-main.mp4
│ 10-类文件结构-附加属性.mp4
│ 11-字节码指令-init.mp4
│ 12-字节码指令-main.mp4
│ 13-javap.mp4
│ 14-图解运行流程-准备.mp4
│ 15-图解运行流程-a赋值.mp4
│ 16-图解运行流程-剩余.mp4
│ 17-练习-分析a++.mp4
│ 18-字节码指令-条件判断.mp4
│ 19-字节码指令-循环控制.mp4
│ 20-练习-分析x=0.mp4
│ 21-字节码指令-cinit.mp4
│ 22-字节码指令-init.mp4
│ 23-方法调用.mp4
│ 24-多态原理-HSDB.mp4
│ 25-多态原理-查找类.mp4
│ 26-多态原理-vtable.mp4
│ 27-多态原理-小结.mp4
│ 28-异常-catch.mp4
│ 29-异常-多个catch.mp4
│ 30-异常-multicatch.mp4
│ 31-异常-finally.mp4
│ 32-finally-面试题1.mp4
│ 33-finally-面试题2.mp4
│ 34-synchronized.mp4
│ 35-语法糖-默认构造.mp4
│ 36-语法糖-自动拆装箱.mp4
│ 37-语法糖-泛型擦除.mp4
│ 38-语法糖-泛型反射.mp4
│ 39-语法糖-可变参数.mp4
│ 40-语法糖-foreach.mp4
│ 41-语法糖-switch-string.mp4
│ 42-语法糖-switch-enum.mp4
│ 43-语法糖-枚举.mp4
│ 44-语法糖-twr1.mp4
│ 45-语法糖-twr2.mp4
│ 46-语法糖-重写桥接.mp4
│ 47-语法糖-匿名内部类.mp4
│ 48-类加载-加载.mp4
│ 49-类加载-连接-验证.mp4
│ 50-类加载-连接-准备.mp4
│ 51-类加载-连接-解析.mp4
│ 52-类加载-初始化.mp4
│ 53-类加载-练习1.mp4
│ 54-类加载-练习2.mp4
│ 55-类加载器-概述.mp4
│ 56-类加载器-启动类加载器.mp4
│ 57-类加载器-扩展加载器.mp4
│ 58-类加载器-双亲委派-源码分析1.mp4
│ 59-类加载器-双亲委派-源码分析2.mp4
│ 60-类加载器-线程上下文1.mp4
│ 61-类加载器-线程上下文2.mp4
│ 62-类加载器-自定义.mp4
│ 63-类加载器-自定义-实现.mp4
│ 64-运行期优化-逃逸分析.mp4
│ 65-运行期优化-方法内联.mp4
│ 66-运行期优化-字段优化.mp4
│ 67-运行期优化-字段优化.mp4
│ 68-反射优化-1.mp4
│ 69-反射优化-2.mp4
│
└─day04
01-JMM-概述.mp4
02-JVM-问题分析.mp4
03-JMM-原子性-synchronized.mp4
04-JMM-原子性-synchronized.mp4
05-JMM-可见性-问题.mp4
06-JMM-可见性-解决.mp4
07-JMM-有序性-问题.mp4
08-JMM-有序性-解决.mp4
09-JMM-有序性-理解.mp4
10-JMM-happens-before.mp4
11-CAS-概述.mp4
12-CAS-底层.mp4
13-CAS-原子类.mp4
14-synchronized-优化.mp4
15-synchronized-轻量级锁.mp4
16-synchronized-轻量级锁-无竞争.mp4
17-synchronized-轻量级锁-锁膨胀.mp4
18-synchronized-重量级锁-自旋.mp4
19-synchronized-偏向锁.mp4
20-synchronized-其它优化.mp4