Javaの4種類の参照について
この記事で書いたWeakReferenceですが、それを加えてJavaには
- 通常の参照
- SoftReference
- WeakReference
- PhantomReference
の4つがある
[Java] WeakReferenceとその仲間たち - Qiita
Javadocの翻訳が間違っている?
weak参照
weak参照以外の参照が無くなった時、GCの回収対象となる
Soft参照
soft参照以外の参照が亡くなったとき、かつヒープの容量が不足しているとき、GCの回収対象となる。 つまりメモリが不足していなければ、回収対象とならない。そこがweak参照との違い
Phantom参照
一番弱い参照。これのget()は常にnullを返す finalize()の代わりに使うみたいなだけど、使い方がよくわからない。 コード例はこの辺にのってる。 blog.ragozin.info