我们知道,对象都存在于堆内存中,数组对象也是存在堆内存中,如果直接打印数组,控制台会输出堆内存中的地址(哈希码形式)。
为什么不用物理地址?
为了安全和 Java 管理内存。
-
1.JVM的垃圾回收器会定期整理堆内存,把不用的堆内存空间清空,移动用的堆内存的位置。
-
2.Java出于安全考虑,隐藏了物理地址,用哈希码表示了。
我们知道,对象都存在于堆内存中,数组对象也是存在堆内存中,如果直接打印数组,控制台会输出堆内存中的地址(哈希码形式)。
为什么不用物理地址?
为了安全和 Java 管理内存。
1.JVM的垃圾回收器会定期整理堆内存,把不用的堆内存空间清空,移动用的堆内存的位置。
2.Java出于安全考虑,隐藏了物理地址,用哈希码表示了。