程序没有方法区释放一段Heap 上的内存,只有JVM 本身可以去回收内存,这个工作单位就是GC。
Garbage Collection
GC 用来清理对象,同时也用来移动对象减少内存碎片。
JVM 指南并没有指定垃圾回收方法,只是说需要有这么一种机制管理内存,所有有各种各样的实现,后面详谈。
关于Heap 的大小,应该可以设定一个最小值和最大值。
对象存放方式
JVM 说明并没有知名对象应该以什么样的方式存放,因此也有各种各样的存放方式。
随便一种:
将Heap 分为handle pool 和object pool.
优点不说,缺点是显而易见的,两个指针才能够真正的操作该对象。
另一种是:
优点不说,缺点也是移动对象的时候,必须更新相关的所有引用。
其他的
还有一些lock, 还有垃圾回收时的bit 标记位这些东西,我们将在后面GC中展开。
Array 呈现方式
比较需要关注的就是lengh.
Note:
JVM 没有提供指令去清理内存?
所有维度相同的Array 是用样的class 类型?