Java基础之类和对象的内存分析

对象在内存中的结构:
在这里插入图片描述
Java基础之类和对象的内存分析_第1张图片
Java基础之类和对象的内存分析_第2张图片

Java基础之类和对象的内存分析_第3张图片

Java基础之类和对象的内存分析_第4张图片
注意 相同类型才能赋值 horse2 = horse1
Java基础之类和对象的内存分析_第5张图片
Java基础之类和对象的内存分析_第6张图片

string 字符串是引用数据类型变量 不是基本数据类型

(1)new关键字:表示向内存申请空间,也表示实例化一个对象,创建一个对象。
(2)一个对象在内存中的大小,由该对象的所有属性所占的内存大小的总和。引用类型变量在32位系统上占4个字节,
在64位系统上占8个字节。加上而外的对象隐性数据所占的大小。
(3)相同的类型才可以赋值
(4)不同的引用,指向同一个对象,任何一个引用改变对象的值,其它引用都会反映出来。
(5)编程时要注意的问题,在确定不使用对象时,要尽早释放对象:引用=null
(6)当一个堆中的对象没有被任何引用变量所指向时,该对象会被JVM 的 GC 程序认为是垃圾对象,从而被回收。

你可能感兴趣的:(Java)