public class Test {
public static void main(String[] args) {
TestA testA = new TestA();
TestB testB = new TestB();
testA.b = testB;
testB.a = testA;
testA = null;
testB = null;
}
}
class TestA{
public TestB b;
}
class TestB{
public TestA a;
}
虽然a和b都为null,但是由于a和b存在循环引用,这样a和b永远都不会被回收。
标记清除法标记清除算法,是将垃圾回收分为2个阶段,分别是标记和清除。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |