- java.lang.Object
-
- java.lang.ref.Reference<T>
-
- java.lang.ref.PhantomReference<T>
-
public class PhantomReference<T> extends Reference<T>
幻像引用对象,在收集器之后排队,确定它们的对象可以被回收。 幻影参考通常用于安排事后清理操作。假设垃圾收集器在某个时间点确定对象是phantom reachable 。 那时它将原子地清除对该对象的所有幻像引用以及对该对象可从其访问的任何其他可进入幻像的对象的所有幻像引用。 在同一时间或稍后,它将使用参考队列注册的新清除的幻像引用入队。
为了确保可回收对象保持如此,可能无法检索幻像引用的引用:幻像引用的
get
方法始终返回null
。- 从以下版本开始:
- 1.2
-
-
构造方法摘要
构造方法 构造器 描述 PhantomReference(T referent, ReferenceQueue<? super T> q)
创建一个新的幻像引用,该引用引用给定对象并在给定队列中注册。
-
-
-
构造方法详细信息
-
PhantomReference
public PhantomReference(T referent, ReferenceQueue<? super T> q)
创建一个新的幻像引用,该引用引用给定对象并在给定队列中注册。可以使用
null
队列创建幻像引用,但是这样的引用完全没用:它的get
方法将始终返回null
并且由于它没有队列,因此它永远不会排队。- 参数
-
referent
- 新幻影引用将引用的对象 -
q
- 要注册引用的队列,如果不需要注册,null
-
-