私は、プリミティブ型の配列がjavaで暗黙的に0に初期化されていることを知っています。私はコードを持っている場合 だから:Javaのガベージコレクタがメモリを再利用するときは?
public class Foo{
public static void main(String args[]){
int[] arr = new int[50];
for(int i = 0; i < 30; i++){
arr[i] = i;
}
for(int i = 0; i < 30; i++){ // This Line
System.out.println(arr[i]);
}
}
}
を私が知りたい場合は、[30] ARRする[49]既にコメントがあるラインでガベージコレクタによって回収されていたであろうARRからメモリ?
答えとして:まだ参照されているので、いいえ。たとえそうでなくても、開発者としてガベージコレクタの実行時に影響を与えることはできません。基本的には、環境がGCを実行する必要性を検出したときに実行されます。 – Stultuske
プログラムが小さすぎて終了が早すぎます。ガベージコレクタは、このプログラムの実行時間内に決して実行されません。 – Robert