1. 引用计数法
虚拟机并未采用!!!
收集算法直接,但并不能解决循环引用带来的内存泄露。
2.根搜索算法
通过一系列GC ROOTS 对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径成为引用链,,当某对象到GC ROOTS没有引用链相连时,则证明此对象不可用。
GCROOTS对象:
虚拟机栈(栈帧中的本地变量表)中的引用的对象。
方法区中的类静态属性引用的对象。
方法区中常量引用的对象。
本地方法栈中JNI(即Native方法)引用的对象。
引用类型:
强引用 > 软引用 > 弱引用 > 虚引用
对的,坚持;错的,放弃!