Spec-Zone.ru › OpenJDK 25

Интерфейс ClassLoaderReference

Все суперинтерфейсы:
Mirror, ObjectReference, Value
public interface ClassLoaderReference extends ObjectReference
Объект загрузчика классов из целевой виртуальной машины. ClassLoaderReference — это ObjectReference с дополнительным доступом к сведениям о загрузчике классов из целевой виртуальной машины. Экземпляры ClassLoaderReference получают с помощью вызовов ReferenceType.classLoader()
Начиная с версии:
1.3
См. также:
  • ObjectReference

Краткое описание полей

Поля, объявленные в интерфейсе ObjectReference

INVOKE_NONVIRTUAL, INVOKE_SINGLE_THREADED

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

Модификатор и тип Метод Описание
List<ReferenceType> definedClasses()
Возвращает список всех классов, определённых этим загрузчиком классов.
List<ReferenceType> visibleClasses()
Возвращает список всех классов, которые этот загрузчик классов может найти по имени с помощью ClassLoader::loadClass, Class::forName и связывания байт-кода в целевой виртуальной машине.

Методы, объявленные в интерфейсе Mirror

toString, virtualMachine

Методы, объявленные в интерфейсе ObjectReference

disableCollection, enableCollection, entryCount, equals, getValue, getValues, hashCode, invokeMethod, isCollected, owningThread, referenceType, referringObjects, setValue, uniqueID, waitingThreads

Методы, объявленные в интерфейсе Value

type

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

definedClasses

List<ReferenceType> definedClasses()
Возвращает список всех классов, определённых этим загрузчиком классов. Порядок элементов в списке не гарантируется. Возвращаемый список включает все ссылочные типы, в том числе скрытые классы или интерфейсы, загруженные как минимум до этапа подготовки, а также типы (например, массивы), для которых подготовка не определена.
Возвращает:
List объектов ReferenceType, представляющих типы, определённые этим загрузчиком классов. Длина списка равна 0, если загрузчик классов не определил ни одного типа.

visibleClasses

List<ReferenceType> visibleClasses()
Возвращает список всех классов, которые этот загрузчик классов может найти по имени с помощью ClassLoader::loadClass, Class::forName и связывания байт-кода в целевой виртуальной машине. Иными словами, это все классы, для которых этот загрузчик классов зарегистрирован как инициирующий загрузчик.

Каждый класс в возвращаемом списке создан этим загрузчиком классов напрямую либо посредством делегирования другому загрузчику классов (см. JVMS 5.3).

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

Список видимых классов обладает полезными свойствами в отношении пространства имён типов. Конкретное имя типа встречается в списке не более одного раза. Каждое поле или переменная, объявленные с таким именем типа в классе, определённом этим загрузчиком классов, должны разрешаться в этот единственный тип.

Порядок элементов в возвращаемом списке не гарантируется.

Обратите внимание: в отличие от definedClasses() и VirtualMachine.allClasses(), некоторые возвращаемые ссылочные типы могут быть не подготовлены. Попытки выполнить некоторые операции с неподготовленными ссылочными типами (например, fields()) приведут к выбросу исключения ClassNotPreparedException. Используйте ReferenceType.isPrepared(), чтобы определить, подготовлен ли ссылочный тип.

Возвращает:
List объектов ReferenceType, представляющих классы, которые этот загрузчик классов может найти по имени. Длина списка равна 0, если этому загрузчику классов не видны никакие классы.
См. также:
  • JVM TI GetClassLoaderClasses

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по 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/jdk.jdi/com/sun/jdi/ClassLoaderReference.html

Spec-Zone.ru

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