从http://java.sun.com/docs/books/performance/1st_edition/html/JPAppGC.fm.html#99740示例 A3.3 说,它说一个对象可能仍然无法用于垃圾收集,即使它可能超出范围。仅当方法脱离堆栈时,IT 才可用。现在,如果我们考虑以下情况:
void foo(){
Dog a = new Dog();
Dog b = new Dog();
b=a
while(true)//loop for long time
}
引用的对象 b 是立即可用于垃圾收集,还是仅在 foo() 方法返回后可用。