class文件结构

class的结构类型

无符号数
u1, u2, u4, u8, 分别代表一个字节.两个字节,四个字节,八个字节. 可以用来存储数字,索引引用,数量值,或者按照utf-8编码的字符串值

表是由多个无符号数或者其他表作为数据项构成的复合数据类型,所有的表都习惯性的用_info结尾,表用于描述有层次关系的复合结构的数据,整个class文件的本身就是一张表

在这里插入图片描述
magic魔数
用于确定这个文件是否为虚拟机所接受的文件. 固定值0xCAFEBABE
minor_version次版本号
JDK次版本号
major_version主版本号
JDK主版本号
constant_pool_count常量池入口
由于常量池中常量的数量是不固定的,常量池入口是为了记录常量的个数,容量计数从1开始,将0空出来是有特殊考虑的,为了满足后面某些指向常量的索引值的数据在特定的情况下需要表达"不可引用任何一个常量池项目"的意思.
access_flags访问标志
public,private,protect,final,abstract标志用于识别类或者接口层次的访问信息
this_class,super_class,interfaces类索引,父类索引,接口索引集合
class文件由这三项数据来确定这个类的继承关系
this_class用来确定这个类的全限定名
super_class用来确定父类的全限定名(父类只能有一个)
interfaces用来描述这个类实现了哪些接口
fields字段表集合
用于存储字段信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值