Java数组销毁

时间:2010-12-28 02:25:55

标签: java arrays null

如果我使用“Array_Name [] = NULL”,java的垃圾收集器是否会收集数组的其余部分?

2 个答案:

答案 0 :(得分:11)

仅当Array_Name实际引用了数组时才开始。并且只有在没有其他对数组的引用时。并且它将只回收数组中那些未被数组外部引用的元素。只有当它想到它时才会这样做: - )

(语法Array_Name[] = NULL并没有什么意义。但我假设你做了类似的事情:

 Foo[] Array_Name = new Foo[n];
 //...
 Array_Name = null; // Note the lowercase "null"

根据我上面描述的条件,这个可能使数组成为垃圾收集的正确目标。)

答案 1 :(得分:1)

我同意Dan上面提到的所有内容,但您实际上可以通过调用System.gc()手动触发垃圾收集。当然,如上所述,这只会收集不再被其他任何东西引用的对象。