【JVM】字节码文件的组成

1. 魔数与Class文件版本

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

2.常量池

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

3.访问标志

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

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

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

5.字段表集合

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

6.方法表集合

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

7.属性表集合

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

相关推荐
2301_782040452 小时前
CSS Flex布局中如何实现导航栏与Logo的左右分布_利用justify-content- space-between
jvm·数据库·python
沐浴露z5 小时前
面试官:静态变量与非静态成员变量的区别?别再死记硬背了!
java·jvm
Chase_______9 小时前
Java 基础语言 ① —— Java 运行机制与开发环境:从 javac 到 JVM 全流程解析
java·jvm·python
xqqxqxxq9 小时前
多线程、进程与JVM 技术笔记
jvm·笔记
cui_ruicheng9 小时前
Linux线程(二):pthread 线程库与线程控制
java·开发语言·jvm
不知名的老吴10 小时前
C++20的jthread使用基础及实例分析
jvm
Devin~Y10 小时前
大厂Java面试实战:Spring Boot/Cloud、Redis/Kafka、JVM调优与Spring AI RAG(内容社区UGC+AIGC客服场景)
java·jvm·spring boot·redis·spring cloud·kafka·mybatis
AI人工智能+电脑小能手10 小时前
【大白话说Java面试题 第42题】【JVM篇】第2题:JVM内存模型有哪些组成部分?
java·开发语言·jvm·面试
青柠代码录10 小时前
【JVM】面试题-对象的内存布局
jvm
AI人工智能+电脑小能手10 小时前
【大白话说Java面试题 第43题】【JVM篇】第3题:GC分为哪两种?Young GC 和 Full GC有什么区别?
java·开发语言·jvm·后端·面试