Spec-Zone.ru › OpenJDK 27

Интерфейс ExceptionEvent

Все суперинтерфейсы:
Event, Locatable, LocatableEvent, Mirror
public interface ExceptionEvent extends LocatableEvent
Уведомление об исключении в целевой виртуальной машине. Когда генерируется исключение, удовлетворяющее условию включённого в данный момент exception request, в очередь событий виртуальной машины добавляется event set, содержащий экземпляр этого класса. Если исключение генерируется нестатическим методом, событие исключения создаётся в месте генерации исключения. Если исключение генерируется нативным методом, событие исключения создаётся в первом достигнутом после генерации исключения месте, не относящемся к нативному методу.
Начиная с:
1.3

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

Модификатор и тип Метод Описание
Location catchLocation()
Возвращает место, где будет перехвачено исключение.
ObjectReference exception()
Возвращает объект сгенерированного исключения.

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

request
Модификатор и тип Метод Описание
EventRequest request()

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

location
Модификатор и тип Метод Описание
Location location()
Возвращает Location этого зеркала, если с ним связан исполняемый код.

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

thread
Модификатор и тип Метод Описание
ThreadReference thread()
Возвращает поток, в котором произошло это событие.

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

toString, virtualMachine
Модификатор и тип Метод Описание
String toString()
Возвращает строку с описанием этого зеркала
VirtualMachine virtualMachine()
Возвращает виртуальную машину, которой принадлежит это зеркало.

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

exception

ObjectReference exception()
Возвращает объект сгенерированного исключения. Объект исключения является экземпляром Throwable или его подкласса в целевой виртуальной машине.
Возвращает:
ObjectReference

catchLocation

Location catchLocation()
Возвращает место, где будет перехвачено исключение. Исключение считается перехваченным, если в момент его генерации текущее место динамически находится внутри оператора try, обрабатывающего это исключение. (Подробные сведения см. в спецификации JVM.) Если такой оператор try существует, местом перехвата является первый индекс кода соответствующего предложения catch.

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

Обратите внимание, что в некоторых случаях компилятор может генерировать блоки try-catch, отсутствующие в исходном коде явно; например, код, сгенерированный для блоков synchronized и finally, может содержать неявные блоки try-catch. Если такой неявно сгенерированный блок try-catch присутствует в стеке вызовов в момент генерации исключения, исключение будет считаться перехваченным, даже если при изучении исходного кода оно кажется неперехваченным.

Возвращает:
Location, где будет перехвачено исключение, или null, если исключение не перехвачено.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, включая концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, 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.

Spec-Zone.ru

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