Интерфейс Invocable
public interface Invocable
Необязательный интерфейс, реализуемый ScriptEngines, методы которого позволяют вызывать процедуры в скриптах, которые были ранее выполнены.
- С:
- 1.6
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
<T> T |
getInterface |
Возвращает реализацию интерфейса, используя функции, скомпилированные в интерпретаторе. |
<T> T |
getInterface |
Возвращает реализацию интерфейса, используя методы-члены объекта сценария, скомпилированные в интерпретаторе. |
Object |
invokeFunction |
Используется для вызова процедур и функций верхнего уровня, определенных в скриптах. |
Object |
invokeMethod |
Вызывает метод объекта сценария, скомпилированного во время предыдущего выполнения скрипта, который сохраняется в состоянии ScriptEngine. |
Подробное описание методов
invokeMethod
Object invokeMethod(Object thiz, String name, Object... args) throws ScriptException, NoSuchMethodException
Вызывает метод объекта сценария, скомпилированного во время предыдущего выполнения скрипта, который сохраняется в состоянии
ScriptEngine.- Параметры:
-
thiz- Если процедура является членом класса, определенного в скрипте, и thiz является экземпляром этого класса, возвращенного предыдущим выполнением или вызовом, то именованный метод вызывается через этот экземпляр. -
name- Имя процедуры, которая должна быть вызвана. -
args- Аргументы для передачи процедуре. Правила преобразования аргументов в переменные сценария зависят от реализации. - Возвращает:
- Значение, возвращаемое процедурой. Правила преобразования переменной сценария, возвращенной методом скрипта, в объект Java зависят от реализации.
- Исключения:
-
ScriptException- если во время вызова метода произошла ошибка. -
NoSuchMethodException- если метод с заданным именем или соответствующими типами аргументов не найден. -
NullPointerException- если имя метода равно null. -
IllegalArgumentException- если указанный thiz равен null или указанный объект не представляет собой объект сценария.
invokeFunction
Object invokeFunction(String name, Object... args) throws ScriptException, NoSuchMethodException
Используется для вызова процедур и функций верхнего уровня, определенных в скриптах.
- Параметры:
-
name- имя процедуры или функции для вызова -
args- Аргументы для передачи процедуре или функции - Возвращает:
- Значение, возвращаемое процедурой или функцией.
- Исключения:
-
ScriptException- если во время вызова метода произошла ошибка. -
NoSuchMethodException- если метод с заданным именем или соответствующими типами аргументов не найден. -
NullPointerException- если имя метода равно null.
getInterface
<T> T getInterface(Class<T> clasz)
Возвращает реализацию интерфейса, используя функции, скомпилированные в интерпретаторе. Методы интерфейса могут быть реализованы с использованием метода
invokeFunction.- Параметры типа:
T- тип возвращаемого интерфейса- Параметры:
-
clasz- ОбъектClassинтерфейса, который необходимо вернуть. - Возвращает:
- Экземпляр запрошенного интерфейса — null, если запрошенный интерфейс недоступен, т. е. если скомпилированные функции в
ScriptEngineне найдены, соответствующие функциям в запрошенном интерфейсе. - Исключения:
-
IllegalArgumentException- если указанный объектClassравен null или не является интерфейсом.
getInterface
<T> T getInterface(Object thiz, Class<T> clasz)
Возвращает реализацию интерфейса, используя методы-члены объекта сценария, скомпилированные в интерпретаторе. Методы интерфейса могут быть реализованы с использованием метода
invokeMethod.- Параметры типа:
T- тип возвращаемого интерфейса- Параметры:
-
thiz- Объект сценария, члены которого используются для реализации методов интерфейса. -
clasz- ОбъектClassинтерфейса, который необходимо вернуть. - Возвращает:
- Экземпляр запрошенного интерфейса — null, если запрошенный интерфейс недоступен, т. е. если скомпилированные методы в
ScriptEngineне найдены, соответствующие методам в запрошенном интерфейсе. - Исключения:
-
IllegalArgumentException- если указанный объектClassравен null или не является интерфейсом, или если указанный объект равен null или не представляет собой объект сценария.
© 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.scripting/javax/script/Invocable.html