大厂面试题——java中垃圾收集的方法有哪些?
1)引用计数法: 应用于:微软的COM/ActionScrip3/Python等
a) 如果对象没有被引用,就会被回收,缺点:需要维护一个引用计算器
2)复制算法: 年轻代中使用的是Minor GC,这种GC算法采用的是复制算法(Copying)
a) 效率高,缺点:需要内存容量大,比较耗内存
b) 使用在占空间比较小、刷新次数多的新生区
3)标记清除: 老年代一般是由标记清除或者是标记清除与标记整理的混合实现
a) 效率比较低,会差生碎片。
4)标记压缩: 老年代一般是由标记清除或者是标记清除与标记整理的混合实现
a) 效率低速度慢,需要移动对象,但不会产生碎片。
5)标记清除压缩: 标记清除-标记压缩的集合,多次GC后才Compact
a) 使用于占空间大刷新次数少的养老区,是3 4的集合体