Я получаю суть ссылочных объектов в Java и основные отличия между мягкими, слабыми и фантомными ссылочными объектами.Java: Требуется уточнение в API-документе для ссылочных объектов
Однако, я не в полной мере понять следующие моменты из API Docs
из API док для WeakReference<T>:
«Слабые опорные объекты, которые не мешают их референты из составляется окончательный вариант, завершено, а затем исправлено. "
Теперь термины в жирного не были объяснены нигде в API Docs, так интересно, что они точно средний, особенно в отношении понятия более или менее DEPRECATED
Object.finalize()
метода доработки.Из API док для Reference<T>:
public void clear()
: «Этот метод вызывается только Java кода, когда сборщик мусора очищает ссылки он делает так непосредственно, без вызова этого метода.»public boolean enqueue()
: «Этот метод вызывается только Java кода, когда сборщик мусора ставит в очередь ссылки он делает так непосредственно, без вызова этого метода.»Опять же, я не знаю, что подразумевается под «Java-код» в 2 выше цитаты: Внутренний код виртуальной машины Java, к которым у меня нет доступа? Или код JDK, к которому я имею доступ только для чтения/просмотра? Или собственный код Java конечного пользователя?
"непосредственно, без вызова этого метода" часть сообщает мне, что JVM не нужно вызывать эти методы. С другой стороны, «только по коду Java» говорит мне, что это не код Java конечного пользователя, а скорее JVM (если это означает код конечного пользователя, тогда мы будем находить эту фразу, замусоренную весь документ API почти для каждого метода каждого класса Java!). Итак, какая интерпретация правильная и кто может назвать эту функцию?
Спасибо, но мне нравится ответ Тима на «окончательный вариант, завершенный, исправленный». Очевидно, что есть какая-то разница, иначе документы не станут настолько подробными. +1 для пояснения «java code». – Harry