Class类文件结构是Java跨平台的基础,它是各种不同平台的虚拟机所统一使用的程序存储格式——字节码(ByteCode)。与所有平台的虚拟机都使用字节码,这是构成平台无关性的基石,也是语言无关性的基础。Java虚拟机不会与特定的语言绑定,而是只与“Class文件”这种特定的二进制文件格式联系在一起。在Class文件中,我们可以找到Java虚拟机指令集、符号表以及一些辅助信息。另外,常量池中存放的常量数量是不固定的,在常量池的入口处需要放置一项u2类型的数据,该数据代表常量池容量的计数值(constant_pool_count)。在常量池中,我们主要会存放字面量和符号引用这两大类常量。字面量是指直接出现在源代码中的常量值,而符号引用则是一种编译时的符号名称。