完全参照博客:https://blog.csdn.net/luanlouis/article/details/39960815
0 常量池中所有的常量都是表结构,一共11中表结构,这些表结构的特点是,表的第一位是U1类型,作为标志位表示这个表示什么类型的表
1 存储哪些范围
2 int和float的存储
tag表示数据类型,1-18分别表示不同的数据类型
3 string类型的存储:CONSTANT_String_info → CONSTANT_Utf-8_info → bytes[length]数组
4 类和结构的完全限定名:CONSTANT_Class_info → CONSTANT_Utf_8_info → bytes[length]
5 总结归纳:class文件二进制流设计得非常紧凑,不像xml一样有描述符号,class文件二进制流设计得本质是每一个数据都有明确的含义,这个含义由3部分组成:(1)数据类型(2)数据长度(3)数据本身(即二进制数据)