JVM8-对象的结构

Java程序员不可不知的对象结构

-对象头用于存储对象的元数据信息:
  -Mark Word 部分数据的长度在32位和64位虚拟机(未开启压缩指针)中分别为32bit和
  64bit,存储对象⾃自身的运行行时数据如哈希值等。Mark Word⼀一般被设计为非固定的数据结
  构,以便便存储更更多的数据信息和复用自己的存储空间。
  -类型指针 指向它的类元数据的指针,⽤用于判断对象属于哪个类的实例例。
-实例例数据存储的是真正有效数据,如各种字段内容,各字段的分配策略略为longs/doubles、ints、
  shorts/chars、bytes/boolean、oops(ordinary object pointers),相同宽度的字段总是被分配到
  一起,便便于之后取数据。父类定义的变量量会出现在子类定义的变量量的前面。
-对齐填充部分仅仅起到占位符的作用

 

posted @ 2019-06-27 17:53  valar-dohaeris  阅读(180)  评论(0)    收藏  举报