上级目录

对于《Java ASM 系列二:OPCODE》有配套的视频讲解,可以点击这里这里 进行查看;同时,也可以从GiteeGithub 下载源代码。


主要内容

第一章 基础

  1. 课程研究主题
  2. ClassFile 和 Instruction
  3. ASM 的 MethodVisitor 类
  4. JVM Architecture
  5. JVM Execution Model

第二章 OPCODE

在 JVM 文档中,一共定义了 205 个opcode,内容比较多,我们可以根据自己的兴趣进行有选择性的学习。在下面文章的标题后面都带有 (m/n/sum) 标识,其中,m 表示当前文章当中介绍多少个 opcode,n 表示到目前为止介绍了多少个 opcode,sum 表示一共有多少个 opcode。

  1. opcode: return (6/6/205)
  2. opcode: constant (20/26/205)
  3. opcode: transfer values (50/76/205)
  4. opcode: math (52/128/205)
  5. opcode: object (3/131/205)
  6. opcode: field (4/135/205)
  7. opcode: method (5/140/205)
  8. opcode: array (20/160/205)
  9. opcode: jump (25/185/205)
  10. opcode: stack (9/194/205)
  11. opcode: wide (1/195/205)
  12. opcode: exception (1/196/205)
  13. opcode: monitor (2/198/205)
  14. opcode: unused (7/205/205)

第三章 难点解析

  1. 调用方法
  2. 创建对象
  3. Exception 处理
  4. Java 8 Lambda
  5. Code Trick

参考资料

学习字节码技术 - lsieun.github.io

QQ Group