Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java数组销毁_Java_Arrays_Null - Fatal编程技术网

Java数组销毁

Java数组销毁,java,arrays,null,Java,Arrays,Null,如果我使用“Array_Name[]=NULL”,那么java的垃圾收集器是否会收集数组的其余部分?只有在Array_Name实际引用了一个数组时才会这样做。并且仅当没有其他对数组的引用时。它将只回收数组中没有被数组外的任何东西引用的元素。而且只有当它觉得有必要去做的时候才会这样做:-) (语法Array\u Name[]=NULL没有真正的意义。但我假设您做了如下操作: Foo[] Array_Name = new Foo[n]; //... Array_Name = null; //

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

只有在
Array_Name
实际引用了一个数组时才会这样做。并且仅当没有其他对数组的引用时。它将只回收数组中没有被数组外的任何东西引用的元素。而且只有当它觉得有必要去做的时候才会这样做:-)

(语法
Array\u Name[]=NULL
没有真正的意义。但我假设您做了如下操作:

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

这可能会使数组成为垃圾收集的合适目标,考虑到我上面描述的条件。)

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

次要问题:通过
Array\u Name[]=NULL
您的意思是
Array\u Name=NULL
,对吗?实际上应该是
arrayName=NULL
。。。风格也很重要。+1…只有当你觉得有必要的时候才会这样做。。。(也就是说,从Java代码的角度来看,GC在运行时基本上是不确定的。)您可能想提到,调用System.GC()是非常不鼓励的。