Java源文件(*.java)通过编译后会变成class文件class文件有固定的二进制格式,class文件的结构在JVM虚拟机规范第四章:The class File Format中有详细的说明。本章节将学习class文件结构class文件解析class文件反编译以及ASM字节码库
    Java语言和JVM虚拟机规范《Java15语言规范》《Java15虚拟机实现规范》
    示例代码TestHelloWorld:

    1. package com.anbai.sec.classloader;
    2. /**
    3. * Creator: yz
    4. * Date: 2019/12/17
    5. */
    6. public class TestHelloWorld {
    7. public String hello() {
    8. return "Hello World~";
    9. }
    10. }


    TestHelloWorld.java编译解析流程:
    1. Java 字节码 - 图1
    TestHelloWorld.java 源码、字节码:
    1. Java 字节码 - 图2