在堆内存里面,分为了EdenSpace、SurvivorSpace、OldGeneration。
当新对象生成,并且在Eden申请空间失败时,就会触发Yonug GC,清除非存活对象,并且把尚且存活的对象标记复制到Survivor区。
Survivor区,内部分为两个区域,每一次GC对象会被标记复制,在两个区域来回移动,死亡的对象会被清除,存活的对象年龄就加一,如果对象年龄达到15岁(对象头中存储年龄的空间是4bit),它就会被放到老年代中。
OldGeneration区,这里使用的是标记整理方法。