在class文件中的魔数、副版本号、主版本之后,紧接着就是常量池的数据区域了。
常量池的组织很简单,前端的两个字节占有的位置叫做常量池计数器(constant_pool_count),它记录着常量池的组成元素 常量池项(cp_info)的个数。紧接着会排列着constant_pool_count-1个常量池项(cp_info)。
每个常量池项(cp_info) 都会对应记录着class文件中的某种类型的字面量。
补充:
1.对于某个类而言,其class文件中至少要有两个CONSTANT_Class_info常量池项,用来表示自己的类信息和其父类信息。
2. javap -v Classname ,可以查看到常量池。