Mar*_*ics 0 java garbage-collection
所以我最近去过面试,并被问到以下问题.(实际上这只是一个测试写作,所以我不能问任何问题)
在main方法的最后,有多少对象可以进行垃圾回收?
public class Main {
public static void main(String[] args) {
Object obj;
for (int i = 0; i < 5; i++) {
obj = new Object();
}
obj = null;
}
}
Run Code Online (Sandbox Code Playgroud)
(A)0
(B)1
(C)5
我知道它是0,因为至少有一个object(obj
)将被垃圾收集,但我也知道它obj
不是真正的对象,它只是对它的引用.所以我的回答是5.
那是对的吗?如果没有,那么为什么呢?