【JVM】字节码文件的组成

1. 魔数与Class文件版本

魔数是一个用于校验字节码文件是否有效的标识,位于文件开头的前四个字节,魔数之后是次版本号和主版本号,共同构成了字节码文件的版本号。

2.常量池

常量池是字节码文件中的一个结构,包含了该类的所有常量,如数字,字符串,符号常量等。

3.访问标志

用于描述该类或接口的访问权限和属性。

4.类索引,父类索引,接口索引

分别指向该类的全限定名,父类的全限定名 和该类实现的接口列表。

5.字段表集合

包含了该类的所有字段,每个字段都有访问标志,名称,描述符和值。

6.方法表集合

包含了该类的所有方法,每个方法都有访问标志,名称,描述符和字节码指令序列。

7.属性表集合

包含了该类或接口的所有属性,如源文件名,行号表,本地变量表。

相关推荐
寻星探路2 小时前
Java EE初阶启程记04---线程的状态
java·开发语言·jvm·java-ee
wshzrf11 小时前
【Java系列课程·Java学前须知】第3课 JDK,JVM,JRE的区别和优缺
java·开发语言·jvm
铅笔侠_小龙虾11 小时前
JVM 深入研究 -- 详解class 文件
java·开发语言·jvm
Just_Do_IT_OK11 小时前
线上JVM问题定位常用命令
jvm
DKPT1 天前
JVM栈溢出时如何dump栈信息?
java·jvm·笔记·学习·spring
DKPT1 天前
JVM堆大小如何设置?
java·开发语言·jvm·笔记·学习
铅笔侠_小龙虾1 天前
JVM 目录
java·jvm
花心蝴蝶.2 天前
JVM 类加载
开发语言·jvm·后端
老赵的博客2 天前
c++ 之多态虚函数表
java·jvm·c++
专注代码七年3 天前
IDEA JVM优化配置idea64.vmoptions - 保守兼容版本 兼容IDEA 2023.3.6版本【亲测可用】
java·jvm·intellij-idea