摘要:本文讲述4种查看java对象所占内存大小的方法
本文分享自华为云社区《》,作者:xiewenci。
计算java对象所占内存大小
1.使用jdk8自带API
使用这种jdk8方式时,Open JDK 不是天然支持的,需要设置一下环境变量
System.setProperty(&34;,&34;);System.out.println(ObjectSizeCalculator.getObjectSize(3L));复制
这个要看内存条上面的型号,只要拿型号到网上一查就知道多大了。芯片上有型号,去查容量就行了。8个芯片就x8就是了。注意9个芯片的还是x8,因为多出来那一个是奇偶校验位,9位但是实际有效数据是8位。也可以装到电脑上。
结果如下:
我们点击软件的内存选项,会跳入到查看电脑内存的各种选项,我们可以看到类型为DDR3,大小是4G,我们再点击SPD,可以看到内存插卡槽的各种选项,我们可以看到其中就有内存条的型号,
2. 借助org.apache.lucene工具类
KVR16N11/4是内存条的型号,4表示单条4G容量的,KVR表示金士顿的意思,16N表示是DDR3 1600三代内存条。内存条是电脑必不可少的组成部分,CPU可通过数据总线对内存寻址。历史上的电脑主板上有主内存,内存条是主内存的扩展。
当一个对象有多个属性,需要计算整个对象的大小时,可以借助org.apache.lucene工具类
集体操作如下:1.在桌面按下“Win+R”,打开运行窗口。2.输入“dxdiag”,点击“确定”。3.在弹出来的页面中即可看到电脑内存。使用相关的软件查看一下原有的笔记本内存型号,不同型号的笔记本内存不可混用。特别要注意的是。
先引入maven坐标
如何从内存条上看到内存大小,<dependency><groupId>org.apache.lucene</groupId><artifactId>lucene-core</artifactId><version>4.0.0</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.12.0</version></dependency>复制
测试代码:
结果如下:
3. 借助jol工具类
先导入maven坐标
测试代码:
1、右键单击我的电脑--进入(属性)。2、则在右边能够清楚的看到自己电脑的内存大小。三、查看型号方法 借助硬件检测软件查看笔记本内存条型号:1、打开浏览器,在搜索框中输入鲁大师 回车搜索,在得到的搜索结果中点击 普通。
结果如下:
4.java对象内存分布
最后,计算一个对象占用多大内存,需要提前了解java对象的布局。