标记清除算法(MarkSweep)
将标记内存的垃圾进行回收,优点效率快,缺点内存碎片多,使用大对象会进行频繁GC,空间利用率低。
拷贝算法(Copying)
使用另一块等大的内存,将存活对象移动,剩下的都是垃圾进行回收即可。优点解决了内存的碎片多的问题。缺点浪费空间,,当存活对象数量很多时,要移动很多内存,效率低下。
标记整理算法(MarkCompack)
将存活对象进行标记,然后将对象往一段移动。移动后末端以后的都是垃圾进项回收。有点同样解决了内存碎片的问题,也省下一块内存的容量。缺点就是复杂度高。