這是一本揭示JVM字節碼“黑科技”的著作,它從原理和應用兩個維度深入剖析了JVM字節碼。書中內容涉及JVM字節碼的大部分應用場景,如Java性能優化、軟件防護與破解、APM等,通過大量實戰案例講解了它在這些場景中的實操技巧。
本書共 12 章,從邏輯上分為兩大部分。
【第①部分:原理篇(第1~8章)】
第1章詳細剖析了class文件的內部結構;
第2章介紹了字節碼的概念以及Java虛擬機棧和棧幀的相關內容;
第3章介紹了字節碼的進階知識,包括泛型擦除、synchronized關鍵字、反射的底層實現原理;
第4章介紹了javac編譯器的原理,以及javac編譯的七大階段和各階段的作用;
第5章從字節碼的角度介紹Kotlin的常見語法糖、coroutine等原理;
第6章介紹了ASM和Javassist這兩個字節碼操作工具;
第7章介紹了Java Instrumentation的原理;
第8章介紹了JSR 269插件化注解處理原理。
【第②部分:應用篇(第9~12章)】
第9章介紹了字節碼在cglib、Fastjson等框架上的應用;
第10章介紹了反編譯、破解、防破解和逆向工程的相關內容;
第11章介紹了APM的概況、分布式跟蹤的基本原理等;
第12章詳細介紹了Android dex文件的組成結構,以及Android字節碼指令與Java字節碼指令的區別。