Класс 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
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected boolean |
catchExceptions |
Устанавливается в true, если dispatch() перехватывает Throwable и сохраняет его в переменной экземпляра exception. |
static final int |
INVOCATION_DEFAULT |
Идентификатор по умолчанию для всех InvocationEvent. |
static final int |
INVOCATION_FIRST |
Обозначает первый целочисленный идентификатор диапазона идентификаторов событий вызова. |
static final int |
INVOCATION_LAST |
Обозначает последний целочисленный идентификатор диапазона идентификаторов событий вызова. |
protected Object |
notifier |
Объект (возможно, null), метод notifyAll() которого будет вызван сразу после возврата метода Runnable.run() или выброса им исключения либо после удаления события. |
protected Runnable |
runnable |
Runnable, метод run() которого будет вызван. |
Поля, объявленные в классе 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
Поля, объявленные в классе EventObject
source
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает InvocationEvent с указанными источником и идентификатором, который при обработке выполнит метод run() объекта runnable. |
|
| Создает InvocationEvent с указанным источником, который при обработке выполнит метод run() объекта runnable. |
||
| Создает InvocationEvent с указанным источником, который при обработке выполнит метод run() объекта runnable. |
||
| Создает InvocationEvent с указанным источником, который при обработке выполнит метод run() объекта runnable. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
dispatch() |
Выполняет метод run() объекта Runnable и уведомляет notifier (если он есть) после возврата run() или выброса им исключения. |
Exception |
getException() |
Возвращает любое исключение Exception, перехваченное при выполнении метода run() объекта Runnable. |
Throwable |
getThrowable() |
Возвращает любое исключение Throwable, перехваченное при выполнении метода run() объекта Runnable. |
long |
getWhen() |
Возвращает временную метку возникновения этого события. |
boolean |
isDispatched() |
Возвращает true, если событие обработано или при обработке выброшено исключение, и false в противном случае. |
String |
paramString() |
Возвращает строку параметров, идентифицирующую это событие. |
Методы, объявленные в классе EventObject
getSource
Подробное описание полей
INVOCATION_FIRST
public static final int INVOCATION_FIRST
- См. также:
INVOCATION_DEFAULT
public static final int INVOCATION_DEFAULT
- См. также:
INVOCATION_LAST
public static final int INVOCATION_LAST
- См. также:
runnable
protected Runnable runnable
notifier
protected volatile Object notifier
- См. также:
catchExceptions
protected boolean catchExceptions
Подробное описание конструкторов
InvocationEvent
public InvocationEvent(Object source, Runnable runnable)
InvocationEvent с указанным источником, который при обработке выполнит метод run() объекта runnable. Это конструктор для удобства. Вызов вида InvocationEvent(source, runnable) ведет себя в точности так же, как вызов InvocationEvent(source, runnable, null, false).
Этот метод выбрасывает IllegalArgumentException, если source равен null.
- Параметры:
-
source—Object, породивший событие -
runnable—Runnable, методrun()которого будет выполнен - Выбрасывает:
-
IllegalArgumentException— еслиsourceравен null - См. также:
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—Object, породивший событие -
runnable—Runnable, методrun()которого будет выполнен -
notifier—Object, методnotifyAllкоторого будет вызван после того, какRunnable.runвернется или выбросит исключение либо после удаления события -
catchThrowables— определяет, должен лиdispatchперехватывать Throwable при выполнении методаrun()объектаRunnableили передавать эти объекты Throwable в цикл диспетчеризации EventDispatchThread - Выбрасывает:
-
IllegalArgumentException— еслиsourceравен null - См. также:
InvocationEvent
public InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables)
InvocationEvent с указанным источником, который при обработке выполнит метод run() объекта runnable. Если listener не равен null, его метод listener.run() будет вызван сразу после того, как run вернется, выбросит исключение или событие будет удалено. Этот метод выбрасывает IllegalArgumentException, если source равен null.
- Параметры:
-
source—Object, породивший событие -
runnable—Runnable, методrun()которого будет выполнен -
listener—Runnable, метод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 с указанными источником и идентификатором, который при обработке выполнит метод run() объекта runnable. Если notifier не равен null, его метод notifyAll() будет вызван сразу после возврата run() или выброса им исключения. Этот метод выбрасывает IllegalArgumentException, если source равен null.
- Параметры:
-
source—Object, породивший событие -
id— целое число, указывающее тип события. Допустимые значения описаны в описании классаInvocationEvent -
runnable—Runnable, методrun()которого будет выполнен -
notifier—Object, методnotifyAllкоторого будет вызван после того, какRunnable.runвернется или выбросит исключение либо после удаления события -
catchThrowables— определяет, должен лиdispatchперехватывать Throwable при выполнении методаrun()объектаRunnableили передавать эти объекты Throwable в цикл диспетчеризации EventDispatchThread - Выбрасывает:
-
IllegalArgumentException— еслиsourceравен null - См. также:
Подробное описание методов
dispatch
public void dispatch()
run() объекта Runnable и уведомляет notifier (если он есть) после возврата run() или выброса им исключения.- Определено в:
-
dispatchв интерфейсеActiveEvent - См. также:
getException
public Exception getException()
run() объекта Runnable.- Возвращает:
- Ссылку на Exception, если он был выброшен; null, если Exception не был выброшен или если этот InvocationEvent не перехватывает исключения
getThrowable
public Throwable getThrowable()
run() объекта Runnable.- Возвращает:
- Ссылку на Throwable, если он был выброшен; null, если Throwable не был выброшен или если этот InvocationEvent не перехватывает объекты Throwable
- Начиная с:
- 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(). В противном случае нет гарантии, что ожидающий поток когда-либо выйдет из состояния ожидания.
- Возвращает:
-
true, если событие обработано или при обработке выброшено исключение, иfalseв противном случае - Начиная с:
- 1.7
- См. также:
paramString
public String paramString()
- Переопределяет:
-
paramStringв классеAWTEvent - Возвращает:
- Строку, идентифицирующую событие и его атрибуты
© 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/java.desktop/java/awt/event/InvocationEvent.html