作者简介

张亚
资深后端工程师和Java工程师,CVTE(视源股份,股票代码:002841)高级技术经理,带领20多人的研发团队做教育相关的产品。
主要技术方向是JVM调优及故障诊断、TCP源码剖析、高并发系统设计,致力于后端底层技术细节的研究。独立实现了公司级全链路APM产品,在字节码、ASM、软件破解等方向有丰富的实战经验。
vim狂热爱好者,热衷分享,是掘金平台的优秀作者,在掘金上撰写过两本关于JVM和TCP底层原理的小册子。

内容简介


这是一本揭示JVM字节码“黑科技”的著作,它从原理和应用两个维度深入剖析了JVM字节码。书中内容涉及JVM字节码的大部分应用场景,如Java性能优化、软件防护与破解、APM等,通过大量实战案例讲解了它在这些场景中的实操技巧。

《深入理解JVM字节码》共 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字节码指令的区别。

下载地址

豆瓣评论

  • ϱ
    本以为几页劝退,没想到写的挺不错的,对invoke指令的描述简单明了,对kotlin的协程和cps也是见过的最简单清晰的解释。虽然内容有点杂,赞一个08-15
  • accfcx
    前几章基础讲的可以。后面几章逐渐水,不过也窥到技术的下一阶段的大门01-12
  • 王悟空
    Java语法逻辑的字节码原理仔细看了看,其他简略看了看。十分不错10-27
  • 西西弗斯
    不推荐精读 适合有针对性翻翻09-01
  • 2BAB
    每次要用的时候就会从头开始看一遍,应该是看第三遍了。后面有些不同平台的修改案例比较浅显并可能过时,主要还是前面基础的部分能快速让普通开发者上手,这点比较关键。01-01

猜你喜欢

大家都喜欢