JVM中一个Object对象包含了哪些东西?

从Java中看只有 hashCodeclass?(分别对应getClass(),hashCode()

最近在看同步相关的内容,里面有说到每个对象都有对象头,对象头中有Mark Word等信息,记录了 锁状态,GC标记对象分代年龄,如果是数组还有记录数组长度。

所以我想问下,对于JVM来说,一个Object对象有哪些信息呢?

阅读 2.4k
1 个回答

Java不会规定对象应该包含哪些元数据,这个是各个JVM实现时自己决定的。

我们只要了解平时能够“感知”到的就行了,比如monitor,其他的真的没必要去钻。当然如果你立志要写一个JVM实现那就另当别论了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题