分代收集算法 当前所有商用虚拟机都采用“分代收集“(Generational Collection)算法,这种算法根据对象存活周期的不同将内存划分成几块。一般是把Java堆划分为新生代和老年代,这样就可以根据各个代的特点选择最合适的收集算法。 新生代:对象存活率低,适用”复制算法“。 老年代:对象存活率高且没有额外的空间提供分配担保,适用”标记 - 清除算法“或”标记 - 整理算法“。