Java内存布局和对象头
对象的内存布局
在HotSpot虚拟机里,对象在堆内存中的存储布局可以分为三个部分:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)

内存布局详解
- 对象头
- 对象标记Mark Work
- 类元信息(类型指针)
- 实例数据
- 对齐填充

对象内部结构分为:对象头、实例数据、对齐填充(保证8个字节的倍数)
对象头分为对象标记(markOop)和类元信息(klassOop),类元信息存储的是指向对象类元数据(klass)的首地址
带着问题探索

Mark Word


在64位系统下,Mark Word占了8个字节,类型指针占了8个字节,一共64个字节

类元信息
类元信息也叫类型指针

实例数据
存放类的属性(Field)数据信息,包括父类的属性信息
对齐填充
虚拟机要求对象起始地址必须是8字节的整数倍
Java内存布局和对象头
http://example.com/2023/09/04/Java内存布局和对象头/