(七)Java Class文件格式、常量池项目的类型、表的结构
* u1、u2、u4分别代表1字节、2字节、4字节
1.Class文件格式
magic:魔数,值为0xcafe baby,表示这是一个可以被虚拟机接收的class文件。很多文件存储标准都使用魔数进行身份识别,比如gif,jpeg。使用魔数而不是文件后缀名的是因为后缀名可以随意改动,使用魔数比较安全。
major_version:主版本号,52对应JDK1.8
2.常量池项目类型
、
3.类访问标志
4.字段表
5.方法表
6.属性表
6.1 Code
6.2 Exception
exception_index_table 是一个指向常量池中CONSTANT_Class_info的引用,表示该异常的类型
6.3 LocalVariableTable
6.4 SourceFile
6.5 ConstantValue
6.6 InnerClasses
6.7 Deprecated & Synthetic
6.8 StackMapTable
6.9 Signature
6.10 BootstrapMethods
上文所有截图均来自《深入理解Java虚拟机》
原文地址:https://blog.****.net/m0_37701628/article/details/86684589