1.垃圾回收方法:
(1).标志清除法:比较古老的方法,在内存中标志所有需要回收的对象,然后在内存中找出已标志的对象进行一一回收,该方法效率不高,同时会产生大量内存碎片。
(2)复制算法:开一片大小一样的内存空间,把存活对象转移到新的片区即(to),对原来的内存片区(from)全部清除。
(3)标志-整理算法:标志存活对象,把存活对象往内存某区聚集移动,然后对边界外的内存进行回收。
(4)分代收集算法:根据不同年代对象存活率不一样应用上面3种不同算法,如年轻代一般可回收的对象比较多,回收也相对较频繁,如果用标记清除或者标志-整理会导致大量内存碎片,并且这两种方法效率不高,而采用复制方法比较合适,from-to、from-to反复执行很合适;而老年代对象存活率较高,标记清除法和标志-整理比较合适,需要回收的对象不多,不必开一片新的内存,浪费资源。