java中如何计算一个对象在内存中的大小呢?

乔欣 Java经验 发布时间:2022-12-05 16:39:57 阅读数:4320 1
下文笔者讲述java中获取一个对象在内存中大小的方法分享,如下所示
java中一个对象的大小等于
    对象头所占内存大小 + 对象实际数据所占大小 + 对其填充所占内存大小

head 对象头

对象头的大小依照操作系统不同而有所改变:
在32位jvm中,占8字节。
在64位JVM中,根据是否开启指针压缩功能,也分为不同的情况:
开启(open)指针压缩功能,对象头所占内存大小为12字节
不开启(close)指针压缩功能,对象头所占内存大小为16字节

Data 对象数据

对象数据的实际大小
需要根据属性的类型进行计算。
java的数据类型分为基本类型(8个)和引用类型
基本类型按照基本类型的所占大小去计算

fill 填充

对其填充所占内存大小
  需要求对象大小是8的整数倍
如果不是8的整数倍
   需对其补位对齐
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202212/16702303485039.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者