静的クラスを再インスタンス化すると、以前に割り当てられたメモリはどうなりますか?
1636 次
1 に答える
4
ネストされたクラスのみがstatic
. ネストされたstatic
クラスのインスタンスは、他のクラスのインスタンスと同じように動作します。
- インスタンスは、そのインスタンスへのライブ (到達可能な) 参照がある限り保持されます。
- 到達不能になると、ガベージ コレクションの対象になります。
- 適格になった後のある時点で、ガベージ コレクションが行われます。
実際に参照について質問している場合static
:
public static Object obj = object1;
public static void main(String[] args) {
obj = object2;
}
これらは他の参照と同様に動作します。
上記のコードでは、obj
を指すように再割り当てすると、ガベージ コレクションの対象になるobject2
場合とそうでない場合があります。object1
これは、それへの生き残った参照があるかどうかに完全に依存します。
于 2013-03-14T13:32:53.733 に答える