类文件结构 - JVM - c

类文件结构1.类文件结构1.1 无关系语言无关:Java虚拟机不与包括Java语言在内的任何语言绑定文件有关:与Class文件特定二进制文件格式关联1.2 类文件结构任何一个Class文件对应唯一一个类或者接口的定义信息,反之不然(可由类加载器直接生成)内容:8位字节为基础单位的二进制流无分隔符8位字节以上数据,高位在前分割Class文件格式:类似C语言体系结构的...
摘要由CSDN通过智能技术生成

类文件结构

1.类文件结构

1.1 无关系

  • 语言无关:Java虚拟机不与包括Java语言在内的任何语言绑定
  • 文件有关:与Class文件特定二进制文件格式关联

1.2 类文件结构

  • 任何一个Class文件对应唯一一个类或者接口的定义信息,反之不然(可由类加载器直接生成)
  • 内容:
    • 8位字节为基础单位的二进制流
    • 无分隔符
    • 8位字节以上数据,高位在前分割
  • Class文件格式:类似C语言体系结构的伪结构体(无符号数 + 表)
    • 表:多个无符号数 + 其它表作为数据项构成符合数据结构类型
    • 结尾:_info
  • Class文件本质就是一张表
  • 当需要描述统一类型但数量不定的多个数据时,使用1个前置容量计数器+若干连续数据项的形式

1.3 具体文件

工具:javap -verbose输出字节码内容

  • 前4个字节:被称为魔数(Magic Number),确定文件是否为能被虚拟机接受的Class文件,值为:0xCAFEBABE

  • 5-8字节:Class文件版本号,第5,6为次版本号,第7,8为主版本号

    java版本号从45开始JDK1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值