做神秘顾客哪个网站好,嘉盛建设集团网站,建设企业网站e路护航,自己电脑做网站模板在HotSpot虚拟机中#xff0c;一个空的Object对象在64位的环境下通常占用约 16 字节的对象头。 这个对象头包括#xff1a;
标记字#xff08;Mark Word#xff09;#xff1a; 8 字节#xff0c;用于存储对象的状态信息、锁信息等。类型指针#xff08;Class Pointer一个空的Object对象在64位的环境下通常占用约 16 字节的对象头。 这个对象头包括
标记字Mark Word 8 字节用于存储对象的状态信息、锁信息等。类型指针Class Pointer 4 字节指向该对象的类的元数据。对齐填充Alignment Padding 通常是 4 字节用于满足对象在内存中的对齐要求。
对象头大小可以通过使用ObjectLayout类来获取该类是OpenJDK中的一个工具类提供了关于对象布局的信息。
添加依懒
dependencygroupIdorg.openjdk.jol/groupIdartifactIdjol-samples/artifactIdversion0.17/version
/dependencyObjectSizeDemo类
package com.xiangpingeasy.learn.demo;import org.openjdk.jol.info.ClassLayout;public class ObjectSizeDemo {public static void main(String[] args) {Object obj new Object();String objectLayout ClassLayout.parseInstance(obj).toPrintable();System.out.println(objectLayout);}
}
运行输出结果
java.lang.Object object internals:
OFF SZ TYPE DESCRIPTION VALUE0 8 (object header: mark) 0x0000000000000001 (non-biasable; age: 0)8 4 (object header: class) 0x00000e8012 4 (object alignment gap)
Instance size: 16 bytes
Space losses: 0 bytes internal 4 bytes external 4 bytes total这个工具类需要添加相关的依赖具体的使用方法和输出会根据具体的HotSpot虚拟机版本而有所不同。在实践中这样的小对象占用的空间相对较小但具体的大小仍然可能会受到JVM版本、运行时参数等因素的影响。