J2SE基础_Java基本类型和Object对象占用的内存大小
2020-03-30 19:10
791 查看
知乎趣闻,2014年的YouTube的计数上限为32bit的整数即2147483647,没想到的是当年的《江南 style》突破了上限,显示-2142871897,让Google慌了神立刻去想办法,就这样YouTube被迫升级了计数系统到 9223372036854775808,这样全世界人民一起看几遍也不会出BUG了吧 ——2020.03.14
其实我上学刚接触的专业知识的时候,东一门西一门,好多知识混杂在一起有了好多错误的认知,后来查了好多资料才有了很多重新的认识,随着经验的不断累积,认知也可能再次升华,现所有言论仅代表现阶段水平。
Java八种基本类型占用的内存大小
Java是被设计成和具体的硬件无关的,所以无关32位64位,感谢没有设计无符号类型,让Java更加简洁。
JVM规范中,boolean变量作为int处理,也就是4字节;boolean数组当做byte数组处理。
byte < char = short < int = boolean = float < double = long
1byte(字节)=8bit(位)
Java一个空对象占用的内存大小
对于32位的JDK
new一个Object对象占用4+8=12字节,其中,4个字节是引用,8个字节是堆内存。
对于64位的JDK
new一个Object对象占用8+16=24字节。其中,8个字节是引用,16个字节是堆内存。
在Hotspot VM(Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机),每个对象占用的总空间是以8的倍数计算的,对象占用总空间(对象头+声明变量)不足8的倍数时候,自动补齐。而这些被填充的空间,我们可以称它为“填充物”。
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- java中基本类型封装对象所占内存的大小(转)
- java基础学习-java常用对象的内存占用大小
- Java学习日记-2.3 基本数据类型和对象所占内存空间大小
- JAVA基本数据类型占用内存大小
- Java对象占用内存大小
- java对象占用内存大小计算方式
- java常用对象的内存占用大小
- python 基本数据类型占用内存空间大小的实例
- Java基础学习19(String类型对象在内存中的分布以及与包装类之间的转换)
- JAVA基础再回首(二十三)——操作基本数据类型的流、内存操作流、打印流、随机访问流、合并流、序列化流
- java基础之IO流--DataOutputStream(专门用于操作Java基本数据类型的IO流对象)
- Java知识点<2> 各个基本数据类型在内存中占的字节大小
- Java中基本数据类型所占内存大小
- java对象占用内存大小计算方法
- 黑马程序员——Java基础——String类、StringBuffer类、StringBuilder类、基本数据类型对象包装类操作、正则表达式应用
- 黑马程序员_Java基础_泛型应用 和 基本数据类型对象包装类
- java基础(一)九种基本数据类型的大小,以及他们的封装类
- JAVA中基本数据类型所占内存空间大小
- java基础教程:常用对象之基本数据类型包装类(23)
- java计算内存大小 java计算对象占用内存大小