Class文件结构

 class文件总体结构:

Class文件结构_第1张图片1.Magic Value(魔数)

  • class文件的第一行的前四个字节 CA FE BA BE(十六进制) ,在JVM在执行class字节码文件的时候,会检查前四个字节是否为这个值,如果不是这个值就不是一个合法的java编译器编译过来的字节码文件,JVM就不会去执行它;
  • 第一行的后四个字节为jdk的版本号 00 00(次版本) 00 34(主版本)  (十六进制转换成十进制为52,代表jdk1.8);

2.CONSTANT_POOL(常量池)

  •  

    Class文件结构_第2张图片

 3.访问标志

  •  

    Class文件结构_第3张图片

4.类索引 

  •  标识继承了那些类,实现了那些接口

 5.字段表集合

  •  用于描述接口或类中声明的变量

字段表结构
Class文件结构_第4张图片 字段访问标志

6.方法表集合

7. 属性表集合

 

你可能感兴趣的:(JVM)