是不是换成了该类的内存地址偏移?
比如下面的截图中所示,最终解析后的这个CONSTANT_Class_info在JVM中的值是什么?
他指向的哪个CONSTANT_Utf8_info解析后是什么样的呢?

Java的Class信息中的常量池中类或接口的全限定名字符串在类的解析后还会在JVM中存在吗?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
threenewbee 2018-07-08 03:32关注你可以理解为一个结构体,它包括tag length 以及真正的字符串。
比如说
00 00 00 01 01 23 45 67
而01 23 45 67这个地址上存储了一个utf8_info
内容是
00 00 00 01 00 00 00 04 01 23 45 67
其中前面的00 00 00 01是 tag 后面那个 00 00 00 04是长度,再后面 01 23 45 67是实际内容。当然,这只是一个假设的模型,实际上jvm怎么实现的,非常复杂,比如说intel是little endian,那么00 00 00 01就会是01 00 00 00。
解决 无用评论 打赏 举报