Spec-Zone.ru › OpenJDK 24

Класс InvocationEvent

java.lang.Object
java.util.EventObject
java.awt.AWTEvent
java.awt.event.InvocationEvent
Все реализованные интерфейсы:
ActiveEvent, Serializable
public class InvocationEvent extends AWTEvent implements ActiveEvent
Событие, которое выполняет метод run() на объекте Runnable при обработке в потоке диспетчера событий AWT. Этот класс может использоваться как реализация по умолчанию для ActiveEvent вместо объявления нового класса и определения dispatch().

Экземпляры этого класса помещаются в EventQueue с помощью вызовов invokeLater и invokeAndWait. Код клиента может использовать этот факт для написания функций-заменителей для invokeLater и invokeAndWait без написания специального кода в объектах AWTEventListener.

Неопределенное поведение будет вызвано, если параметр id любого конкретного экземпляра InvocationEvent не находится в диапазоне от INVOCATION_FIRST до INVOCATION_LAST.

С момента:
1.2
См. также:
  • ActiveEvent
  • EventQueue.invokeLater(java.lang.Runnable)
  • EventQueue.invokeAndWait(java.lang.Runnable)
  • AWTEventListener
  • Сериализованная форма

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

Модификатор и тип Поле Описание
protected boolean catchExceptions
Устанавливается в true, если dispatch() перехватывает Throwable и сохраняет его в переменной исключения.
static final int INVOCATION_DEFAULT
По умолчанию ID для всех InvocationEvents.
static final int INVOCATION_FIRST
Определяет первый целочисленный ID диапазона ID событий вызова.
static final int INVOCATION_LAST
Определяет последний целочисленный ID диапазона ID событий вызова.
protected Object notifier
Объект (возможно, null), чей метод notifyAll() будет вызван сразу после того, как метод Runnable.run() вернет результат или бросит исключение, или после того, как событие было обработано.
protected Runnable runnable
Runnable, чей метод run() будет вызван.

Поля, объявленные в классе java.awt.AWTEvent

ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK

Поля, объявленные в классе java.util.EventObject

source

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

InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables)
InvocationEvent(Object source, Runnable runnable)
InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables)
InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables)
Модификатор Конструктор Описание
protected
Создает InvocationEvent с указанным источником и ID, который будет выполнять метод runnable's run() при обработке.
Создает InvocationEvent с указанным источником, который будет выполнять метод runnable's run() при обработке.
Создает InvocationEvent с указанным источником, который будет выполнять метод runnable's run() при обработке.
Создает InvocationEvent с указанным источником, который будет выполнять метод runnable's run() при обработке.

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

Модификатор и тип Метод Описание
void dispatch()
Выполняет метод Runnable's run() и уведомляет нотификатор (если есть) при возвращении run() или броске исключения.
Exception getException()
Возвращает любое исключение, перехваченное во время выполнения метода Runnable's run().
Throwable getThrowable()
Возвращает любой Throwable, перехваченный во время выполнения метода Runnable's run().
long getWhen()
Возвращает отметку времени, когда произошло это событие.
boolean isDispatched()
Возвращает true, если событие обработано или при броске исключения во время обработки, false в противном случае.
String paramString()
Возвращает строку параметра, идентифицирующую это событие.

Методы, объявленные в классе java.awt.AWTEvent

consume, getID, isConsumed, setSource, toString

Методы, объявленные в классе java.util.EventObject

getSource

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

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

Подробное описание полей

INVOCATION_FIRST

public static final int INVOCATION_FIRST
Указывает первый целочисленный идентификатор для диапазона идентификаторов событий вызова.
См. также:
  • Значения константных полей

INVOCATION_DEFAULT

public static final int INVOCATION_DEFAULT
По умолчанию идентификатор для всех InvocationEvents.
См. также:
  • Значения константных полей

INVOCATION_LAST

public static final int INVOCATION_LAST
Указывает последний целочисленный идентификатор для диапазона идентификаторов событий вызова.
См. также:
  • Значения константных полей

runnable

protected Runnable runnable
Runnable, метод run() которого будет вызван.

notifier

protected volatile Object notifier
Объект (возможно, null), метод notifyAll() которого будет вызван сразу после возврата или возникновения исключения в методе Runnable.run() или после удаления события.
См. также:
  • isDispatched()

catchExceptions

protected boolean catchExceptions
Устанавливается в true, если dispatch() перехватывает Throwable и сохраняет его в переменной исключения. Если false, Throwable передаются вверх в цикл обработки событий EventDispatchThread.

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

InvocationEvent

public InvocationEvent(Object source, Runnable runnable)
Создаёт InvocationEvent с указанным источником, который будет выполнять метод run() runnable при обработке.

Это удобный конструктор. Вызов вида InvocationEvent(source, runnable) ведет себя точно так же, как вызов InvocationEvent(source, runnable, null, false).

Этот метод выбрасывает IllegalArgumentException, если source равен null.

Параметры:
source - Источник события
runnable - Runnable, метод run() которого будет выполнен
Исключения:
IllegalArgumentException - если source равен null
См. также:
  • EventObject.getSource()
  • InvocationEvent(Object, Runnable, Object, boolean)

InvocationEvent

public InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables)
Создаёт InvocationEvent с указанным источником, который будет выполнять метод run() runnable при обработке. Если notifier не равен null, notifyAll() будет вызван на нём сразу после того, как run() вернётся или бросит исключение.

Вызов вида InvocationEvent(source, runnable, notifier, catchThrowables) ведет себя точно так же, как вызов InvocationEvent(source, InvocationEvent.INVOCATION_DEFAULT, runnable, notifier, catchThrowables).

Этот метод выбрасывает IllegalArgumentException, если source равен null.

Параметры:
source - Источник события
runnable - Runnable, метод run() которого будет выполнен
notifier - Объект, на котором будет вызван метод notifyAll() после возвращения или исключения в методе Runnable.run() или после удаления события
catchThrowables - Указывает, должен ли dispatch перехватывать Throwable при выполнении метода run() runnable или же должен передавать эти Throwable в цикл обработки событий EventDispatchThread
Исключения:
IllegalArgumentException - если source равен null
См. также:
  • EventObject.getSource()
  • InvocationEvent(Object, int, Runnable, Object, boolean)

InvocationEvent

public InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables)
Создаёт InvocationEvent с указанным источником, который будет выполнять метод run() runnable при обработке. Если listener не равен null, listener.run() будет вызван на нём сразу после того, как run вернётся, бросит исключение или событие было удалено.

Этот метод выбрасывает IllegalArgumentException, если source равен null.

Параметры:
source - Источник события
runnable - Runnable, метод run() которого будет выполнен
listener - Listener, метод run() которого будет вызван после обработки InvocationEvent или его удаления
catchThrowables - Указывает, должен ли dispatch перехватывать Throwable при выполнении метода run() runnable или же должен передавать эти Throwable в цикл обработки событий EventDispatchThread
Исключения:
IllegalArgumentException - если source равен null

InvocationEvent

protected InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables)
Создаёт InvocationEvent с указанным источником и ID, который будет выполнять метод run() runnable при обработке. Если notifier не равен null, notifyAll() будет вызван на нём сразу после того, как run() вернётся или бросит исключение.

Этот метод выбрасывает IllegalArgumentException, если source равен null.

Параметры:
source - Источник события
id - Целое число, определяющее тип события. Для информации о допустимых значениях см. описание класса InvocationEvent
runnable - Runnable, метод run() которого будет выполнен
notifier - Объект, на котором будет вызван метод notifyAll() после возвращения или исключения в методе Runnable.run() или после удаления события
catchThrowables - Указывает, должен ли dispatch перехватывать Throwable при выполнении метода run() runnable или же должен передавать эти Throwable в цикл обработки событий EventDispatchThread
Исключения:
IllegalArgumentException - если source равен null
См. также:
  • EventObject.getSource()
  • AWTEvent.getID()

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

dispatch

public void dispatch()
Выполняет метод run() Runnable и уведомляет notifier (если он есть), когда run() вернётся или бросит исключение.
Определено в:
dispatch в интерфейсе ActiveEvent
См. также:
  • isDispatched()

getException

public Exception getException()
Возвращает любое исключение, перехваченное при выполнении метода run() Runnable.
Возвращает:
Ссылка на исключение, если оно было брошено; null, если исключение не было брошено или этот InvocationEvent не перехватывает исключения

getThrowable

public Throwable getThrowable()
Возвращает любой Throwable, перехваченный при выполнении метода run() Runnable.
Возвращает:
Ссылка на Throwable, если оно было брошено; null, если Throwable не было брошено или этот InvocationEvent не перехватывает Throwables
С:
1.5

getWhen

public long getWhen()
Возвращает отметку времени, когда произошло это событие.
Возвращает:
отметка времени этого события
С:
1.4

isDispatched

public boolean isDispatched()
Возвращает true, если событие обработано или при обработке произошло исключение, false в противном случае. Метод должен вызываться ожидающей нитью, которая вызывает метод notifier.wait(). Поскольку возможны ложные пробуждения (как описано в Object.wait()), этот метод следует использовать в цикле ожидания для гарантированного выполнения события:
     while (!event.isDispatched()) {
         notifier.wait();
     }
 
Если ожидающая нить просыпается без обработки события, метод isDispatched() возвращает false, и цикл while выполняется ещё раз, тем самым заставляя пробужденную нить вернуться в режим ожидания.

Если notifier.notifyAll() происходит до того, как ожидающая нить войдёт в метод notifier.wait(), цикл while гарантирует, что ожидающая нить не войдёт в метод notifier.wait(). В противном случае нет гарантии, что ожидающая нить когда-либо будет разбужена из состояния ожидания.

Returns:
true, если событие было обработано или при обработке возникло исключение, false в противном случае
Since:
1.7
See Also:
  • dispatch()
  • notifier
  • catchExceptions

paramString

public String paramString()
Возвращает строку параметров, идентифицирующую данное событие. Этот метод полезен для ведения журнала событий и отладки.
Overrides:
paramString в классе AWTEvent
Returns:
Строка, идентифицирующая событие и его атрибуты

© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/event/InvocationEvent.html

Spec-Zone.ru

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