类型 | 名称 | 数量 |
U4 | Magic | 1 |
U2 | Minor_version | 1 |
U2 | Major_version | 1 |
U2 | Constant_pool_count | 1 |
Cp_info | Constant_pool | Constant_pool_count-1 |
U2 | Access_flags | 1 |
U2 | This_class | 1 |
U2 | Super_class | 1 |
U2 | Interfaces_count | 1 |
U2 | Interfaces | Interfaces_count |
U2 | Fields_count | 1 |
Field_info | Fields | Fields_count |
U2 | Methods_count | 1 |
Method_info | Methods | Methods_count |
U2 | Attributes_count | 1 |
Attribute_info | Attributes | Attributes_count |
标志名 | 值 | 设置后的含义 | 设置者 |
ACC_PUBLIC | 0x0001 | Public类型 | 类和接口 |
ACC_FINAL | 0x0010 | 类为final类型 | 只有类 |
ACC_SUPER | 0x0020 | 使用invokespecial语义 | 类和接口 |
ACC_INTERFACE | 0x0200 | 接口类型,不是类类型 | 所有接口,没有类 |
ACC_ABSTRACT | 0x0400 | Abstract类型 | 所有接口,部分类 |
类型
|
名称
|
说明
|
数量
|
U2
|
access_flags
|
字段访问权限
|
1
|
U2
|
name_index
|
字段名称
|
1
|
U2
|
descriptor_index
|
字段描述符
|
1
|
U2
|
attributes_count
|
attributes
项目数
|
1
|
attribute_info
|
attributes
|
attribute_info
列表
|
attributes_count
|
标准名称 | 值 | 设定含义 | 设定者 |
ACC_PUBLIC | 0x0001 | public | 类和接口 |
ACC_PRIVATE | 0x0002 | private | 只有类 |
ACC_PROTECTED | 0x0004 | protected | 只有类 |
ACC_STATIC | 0x0008 | static | 类和接口 |
ACC_FINAL | 0x0010 | final | 类和接口 |
ACC_VOILATIE | 0x0040 | volatile | 只有类 |
ACC_TRANSIENT | 0x0080 | transient | 只有类 |
类型
|
名称
|
说明
|
数量
|
U2
|
access_flags
|
方法访问权限
|
1
|
U2
|
name_index
|
方法名称
|
1
|
U2
|
descriptor_index
|
方法描述符
|
1
|
U2
|
attributes_count
|
attributes
项目数
|
1
|
attribute_info
|
attributes
|
attribute_info
列表
|
attributes_count
|
标准名称 | 值 | 设定含义 | 设定者 |
ACC_PUBLIC | 0x0001 | public | 类和所有的接口方法 |
ACC_PRIVATE | 0x0002 | private | 只有类 |
ACC_PROTECTED | 0x0004 | protected | 只有类 |
ACC_STATIC | 0x0008 | static | 只有类 |
ACC_FINAL | 0x0010 | final | 只有类 |
ACC_SYNCHRONIZED | 0x0020 | synchronized | 只有类 |
ACC_NATIVE | 0x0100 | native | 只有类 |
ACC_ABSTRACT | 0x0400 | abstract | 类和所有的接口方法 |
ACC_STRICT | 0x0800 | strictFP | 类和接口的<clinit>方法 |
名称 | 使用者 | 描述 |
Code | method_info | 方法的字节码和其他数据 |
ConstantValue | field_info | Final变量的值 |
Deprecated | field_info, method_info | 字段或方法被禁用指示符 |
Exceptions | method_info | 方法抛出的可被检测的异常 |
InnerClasses | ClassFile | 内部、外部类的列表 |
LineNumberTable | Code_attribute | 方法的行号与字节码的映射 |
LocalVariableTable | Code_attribute | 方法局部变量的描述 |
SourceFile | ClassFile | 源文件名 |
Synthetic | field_info, method_info | 编译器产生的字段或方法的指示符 |