
構建 JVM培訓
1 構建解釋器核心
2 ClassFile 解析
3 運行時數據、Frame、MetaSpace 與 Heap
4 實現基本指令集
5 類初始化與靜態字段的存取
6 繼承,多態與接口默認方法
7 異常處理和反射機制
8 擴展解釋器核心
9 類加載器
10 解釋器與運行時集成
11 靜態方法調用與本地方法調用
12 實例,實例化與實例字段的存取
13 數組,字符串與命令行參數
14 虛擬機的初始化與 System.out
1
快速原型,構建解釋器核心
1.解釋器是什么
2.javap命令
3.機器語言與匯編語言
4.字節碼對應的“匯編語言”
5.解釋器的核心實現
2
再接再厲,擴展解釋器核心
1.解釋器的擴展
2.項目結構組織
3
ClassFile 解析
1.Class文件格式
2.JavaIO操作
3.Class文件解析
4
類加載器
1.classpath是什么
2.如何找到指定的class
3.類加載器的作用
5
運行時數據、Frame、MetaSpace 與 Heap
1.運行時數據結構
2.棧幀
3.操作數棧
4.本地變量表
5.元空間
6.堆
6
解釋器與運行時集成
1.解釋器如何操作運行時數據
2.操作運行時數據
3.解釋main方法
7
實現基本指令集
1.指令集分類
2.代碼生成
3.常量指令
4.加載存儲指令
5.數學指令
6.比較指令
8
靜態方法調用與本地方法調用
1.方法調用實現
2.stackoverflow錯誤
3.invokestatic指令
4.本地方法
5.本地方法調用
9
面向對象,類初始化與靜態字段的存取
1.類
2.靜態變量
3.類初始化
4.類的遞歸初始化
5.putstatic,getstatic
10
面向對象,實例,實例化與實例字段的存取
1.new指令
2.實例化
3.實例的遞歸初始化
4.getfield,putfield指令
5.棧指令集的實現
11
面向對象,繼承,多態與接口默認方法
1.繼承
2.多態
3.接口初始化
4.默認方法
12
數組,字符串與命令行參數
1.newarray,anewarray指令
2.基本類型數組
3.引用類型數組
4.java/lang/String類與char[]
13
異常處理
1.異常處理實現
2.空指針異常
3.trycatch原理
14
反射機制
1.反射機制
2.本地方法
15
虛擬機的初始化與 System.out
1.虛擬機的初始化入口
2.Systemout的初始化時機
16
功能補充
1.可觀測性
2.verbose系列選項
3.jar方式啟動
4.異常棧關聯行號
5.空指針異常提示優化
