Класс ClassNotLoadedException
- Все реализуемые интерфейсы:
Serializable
public class ClassNotLoadedException extends Exception
Из-за отложенной компоновки классов, выполняемой многими виртуальными машинами, поле или переменная могут быть видны в программе до загрузки связанного с ними класса. Пока класс не загружен, доступна только строка сигнатуры. Если из JDI предпринимается попытка задать значение такого поля или переменной, выполнить соответствующую проверку типов невозможно, поскольку целевой класс не загружен. То же относится к классу элементов массива.
В данном случае не рекомендуется решать эту проблему, пытаясь загрузить класс на лету. Если отладчик загружает класс вместо того, чтобы дождаться его загрузки в обычном порядке, возникают две проблемы.
- Нельзя гарантировать, что запуск соответствующего загрузчика классов не приведёт к взаимной блокировке при загрузке класса. Загрузчики классов могут состоять из произвольного кода на языке программирования Java, а методы загрузки классов обычно синхронизированы. Большинство операций отладчика выполняется, когда потоки приостановлены. Если другой поток приложения приостановлен внутри того же загрузчика классов, весьма вероятна взаимная блокировка.
- Изменение обычного порядка загрузки классов может как скрыть, так и выявить ошибки в приложении. Ненавязчивый отладчик должен стремиться не изменять поведение отлаживаемого приложения.
Обратите внимание: это исключение будет выбрасываться до тех пор, пока рассматриваемый класс не станет видимым загрузчику классов охватывающего класса. (То есть загрузчик классов охватывающего класса должен быть инициирующим загрузчиком классов для рассматриваемого класса.) Дополнительные сведения см. в Спецификации виртуальной машины Java.
- Начиная с версии:
- 1.3
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ClassNotLoadedException |
|
ClassNotLoadedException |
Краткое описание методов
Методы, объявленные в классе Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString | Модификатор и тип | Метод | Описание |
|---|---|---|
final void |
addSuppressed |
Добавляет указанное исключение к исключениям, подавленным при создании этого исключения. |
Throwable |
fillInStackTrace() |
Заполняет трассировку стека выполнения. |
Throwable |
getCause() |
Возвращает причину этого объекта-исключения или null, если причина отсутствует или неизвестна. |
String |
getLocalizedMessage() |
Создаёт локализованное описание этого объекта-исключения. |
String |
getMessage() |
Возвращает строку подробного сообщения этого объекта-исключения. |
StackTraceElement[] |
getStackTrace() |
Предоставляет программный доступ к сведениям о трассировке стека, выводимым методом Throwable.printStackTrace(). |
final Throwable[] |
getSuppressed() |
Возвращает массив, содержащий все исключения, которые были подавлены, обычно оператором try-with-resources, при создании этого исключения. |
Throwable |
initCause |
Инициализирует причину этого объекта-исключения указанным значением. |
void |
printStackTrace() |
Выводит это исключение и трассировку стека в стандартный поток ошибок. |
void |
printStackTrace |
Выводит это исключение и трассировку стека в указанный поток печати. |
void |
printStackTrace |
Выводит это исключение и трассировку стека в указанный объект печати. |
void |
setStackTrace |
Задаёт элементы трассировки стека, которые будут возвращены методом Throwable.getStackTrace() и выведены методом Throwable.printStackTrace() и связанными с ними методами. |
String |
toString() |
Возвращает краткое описание этого объекта-исключения. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, является ли другой объект «равным» этому. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии. Финализация устарела и подлежит удалению в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает значение хеш-кода этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
ClassNotLoadedException
public ClassNotLoadedException(String className)
ClassNotLoadedException
public ClassNotLoadedException(String className, String message)
Подробное описание методов
className
public String className()
© 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.