你不可不知的Java引用類型之——PhantomReference源碼詳解


定義

PhantomReference是虛引用,該引用不會影響不會影響對象的生命周期,也無法從虛引用中獲取對象實例。

說明

源碼介紹部分其實也沒多大內容,主要內容都在前面介紹中說完了。PhantomReference類的源碼和WeakReference類一樣簡單:

public class PhantomReference<T> extends Reference<T> {
    public T get() {
        return null;
    }

    /**
     * 這里傳入的引用隊列也可以為null,但是這樣的引用沒有任何意義,因為永遠不會入隊
     */
    public PhantomReference(T referent, ReferenceQueue<? super T> q) {
        super(referent, q);
    }
}

可以看到,get方法直接返回null,有一個兩個參數的構造方法,傳入被引用的對象和引用隊列。

那么,這篇也先告一段落吧。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM