Foundation 1.1.2

java.lang.ref
クラス PhantomReference

java.lang.Object
  上位を拡張 java.lang.ref.Reference
      上位を拡張 java.lang.ref.PhantomReference

public class PhantomReference
extends Reference

ファントム参照オブジェクトです。 ファントム参照オブジェクトがキューに入れられるのは、キューに入れておかないとそれらのリファレントが再生される可能性があるとコレクタが判断したときです。ファントム参照オブジェクトは、ほとんどの場合、Java のファイナライズ機構よりも柔軟な方法で、プリモルテムクリーンアップアクションのスケジューリングを行うために使用されます。

ある時点で、ファントム参照のリファレントが「ファントム到達可能」であるとガベージコレクタが判断した場合、その時点またはそのしばらくあとにガベージコレクタはその参照をキューに入れます。

再生可能なオブジェクトをそのままにしておくために、ファントム参照のリファレントを取り出すことはできません。ファントム参照の get メソッドは、常に null を返します。

ソフト参照および弱参照と違って、ファントム参照はそれらがキューに入れられるときにガベージコレクタによって自動的にクリアされません。ファントム参照を介して到達可能なオブジェクトは、すべてのファントム参照がクリアされるか、ファントム参照自身が到達不可能になるまで到達可能です。

導入されたバージョン:
1.2

コンストラクタの概要
PhantomReference(Object referent, ReferenceQueue q)
          指定されたオブジェクトを参照し、指定されたキューに登録されている新しいファントム参照を作成します。
 
メソッドの概要
 Object get()
          参照オブジェクトのリファレントを返します。
 
クラス java.lang.ref.Reference から継承されたメソッド
clear, enqueue, isEnqueued
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

PhantomReference

public PhantomReference(Object referent,
                        ReferenceQueue q)
指定されたオブジェクトを参照し、指定されたキューに登録されている新しいファントム参照を作成します。

パラメータ:
referent - 新しいファントム参照が参照するオブジェクト
q - ファントム参照が登録されるキュー
例外:
NullPointerException - queue 引数が null の場合
メソッドの詳細

get

public Object get()
参照オブジェクトのリファレントを返します。ファントム参照のリファレントは常にアクセス不可能なため、このメソッドは常に null を返します。

オーバーライド:
クラス Reference 内の get
戻り値:
null

Foundation 1.1.2

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。 ing HTM