【发布时间】:2010-04-26 14:05:08
【问题描述】:
这是一个java考试中的问题,
#1 有多少对象符合 gabage 收集条件?
public class Main {
Integer x = 32768;
public static void main(String[] args)
{
Main m = new Main();
m = null;
// #1
}
}
我以为它只是收集 Integer x,GC 甚至收集 Main 对象 m 吗?
【问题讨论】:
-
真正的问题是如何根据经验进行测试。不过,您的问题的答案是 2:
x和m。但我怀疑 GC 会在程序结束之前触发。 -
基于此 OP 的附加问题:即使 args 持有对字符串的引用,JIT GC 是否可以因为没有引用而获得 args?我想知道发生在订购之前是否合法。实际上,GC 永远不会在这么小的程序中发生。这只是一个书呆子问题。
标签: java