Spec-Zone.ru › OpenJDK 25

Класс WeakReference<T>

java.lang.Object
java.lang.ref.Reference<T>
java.lang.ref.WeakReference<T>
Параметры типа:
T — тип референта
public non-sealed class WeakReference<T> extends Reference<T>
Объекты слабых ссылок, которые не препятствуют тому, чтобы их референты стали доступными для финализации, были финализированы, а затем освобождены. Слабые ссылки чаще всего используются для реализации канонизирующих отображений.

Предположим, что в определенный момент времени сборщик мусора определяет, что объект слабо достижим. В этот момент он атомарно очистит все слабые ссылки на этот объект и все слабые ссылки на любые другие слабо достижимые объекты, из которых этот объект достижим через цепочку сильных и мягких ссылок. В то же время он объявит все объекты, ранее являвшиеся слабо достижимыми, доступными для финализации. В это же время или позднее он поместит в очереди ссылок вновь очищенные слабые ссылки, зарегистрированные в этих очередях.

Начиная с версии:
1.2

Краткое описание конструкторов

Конструктор Описание
WeakReference(T referent)
Создает новую слабую ссылку на заданный объект.
WeakReference(T referent, ReferenceQueue<? super T> q)
Создает новую слабую ссылку на заданный объект и регистрирует ее в заданной очереди.

Краткое описание методов

Методы, объявленные в классе Reference

clear, clone, enqueue, get, isEnqueued, reachabilityFence, refersTo

Методы, объявленные в классе Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

WeakReference

public WeakReference(T referent)
Создает новую слабую ссылку на заданный объект. Новая ссылка не регистрируется ни в одной очереди.
Параметры:
referent — объект, на который будет ссылаться новая слабая ссылка

WeakReference

public WeakReference(T referent, ReferenceQueue<? super T> q)
Создает новую слабую ссылку на заданный объект и регистрирует ее в заданной очереди.
Параметры:
referent — объект, на который будет ссылаться новая слабая ссылка
q — очередь, в которой необходимо зарегистрировать ссылку, или null, если регистрация не требуется

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, который содержит более подробные описания для разработчиков, включая общие сведения, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/ref/WeakReference.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API