Java中Class文件字节码组织结构
Java之所以有强大的跨平台文件,与其class文件密不可分,Java优先将代码编译成class文件,再通过虚拟机去解析class文件做运行,这意味着不管你是什么操作系统,什么平台,只要支持JVM,都能使用同一个class文件,那么class文件到底是什么呢?下面一张图做出解释
1.魔数:确定该Class文件能否被虚拟机接收
2.版本:Class文件的版本号,保证编译执行
3.常量池:存放字面量和符号引用
4.访问标志:标志一些类或者接口的层次信息。比如该类的访问权限,是类还是接口
5.类索引:当前索引确定当前类的全限定名,父类索引确定父类的全限定名