誰かが3つのリファレンスクラスの違いを説明できますか(または素敵な説明へのリンクを投稿できますか)?SoftReference
> WeakReference
>PhantomReference
が、私は一つ一つを使用するとき?なぜあるのにWeakHashMap
ないのSoftHashMap
かPhantomHashMap
?
そして、次のコードを使用すると...
WeakReference<String> ref = new WeakReference<String>("Hello!");
if (ref != null) { // ref can get collected at any time...
System.gc(); // Let's assume ref gets collected here.
System.out.println(ref.get()); // Now what?!
}
...何が起こるのですか?ref
すべてのステートメントの前にnullかどうかを確認する必要がありますか(これは間違っていますが、どうすればよいですか)?急いで質問して申し訳ありませんが、これらのReference
クラスを理解するのに苦労しています...ありがとう!
WeakHashMap
がない、SoftHashMap
またはPhantomHashMap
優れているのか、なぜ以前にこれに気づかなかったのか.. ??