public interface Invocable
Modifier and Type | Method and Description |
---|---|
<T> T |
getInterface(类<T> clasz)
使用在解释器中编译的函数返回接口的实现。
|
<T> T |
getInterface(Object thiz, 类<T> clasz)
使用解释器中编译的脚本对象的成员函数返回接口的实现。
|
Object |
invokeFunction(String name, Object... args)
用于调用脚本中定义的顶级过程和函数。
|
Object |
invokeMethod(Object thiz, String name, Object... args)
调用在前一个脚本执行期间编译的脚本对象上的方法,该方法保留在
ScriptEngine 的状态。
|
Object invokeMethod(Object thiz, String name, Object... args) throws ScriptException, NoSuchMethodException
ScriptEngine
的状态。
name
- 要调用的过程的名称。
thiz
- 如果过程是在脚本中定义的类的成员,而thiz是先前执行或调用返回的该类的实例,则通过该实例调用命名方法。
args
- 传递给程序的参数。
将参数转换为脚本变量的规则是实现特定的。
ScriptException
- 如果在调用方法期间发生错误。
NoSuchMethodException
- 如果无法找到具有给定名称或匹配参数类型的方法。
NullPointerException
- 如果方法名称为空。
IllegalArgumentException
- 如果指定的thiz为空或指定的对象不表示脚本对象。
Object invokeFunction(String name, Object... args) throws ScriptException, NoSuchMethodException
name
- 要调用的程序或函数
args
- 传递给程序或函数的参数
ScriptException
- 如果在调用方法期间发生错误。
NoSuchMethodException
- 如果
NoSuchMethodException
具有给定名称或匹配参数类型的方法。
NullPointerException
- 如果方法名为null。
<T> T getInterface(类<T> clasz)
invokeFunction
方法可以使用invokeFunction
方法来实现。
T
- 要返回的接口的类型
clasz
- 返回的界面的
类
对象。
ScriptEngine
接口中的
ScriptEngine
匹配,则为null。
IllegalArgumentException
- 如果指定的
类
对象为空或不是接口。
<T> T getInterface(Object thiz, 类<T> clasz)
invokeMethod
方法可以使用invokeMethod
方法来实现。
T
- 要返回的接口的类型
thiz
- 其成员函数用于实现接口方法的脚本对象。
clasz
- 要返回的界面的
类
对象。
ScriptEngine
中的编译方法不匹配,则为null。
IllegalArgumentException
- 如果指定的
类
对象为空或不是接口,或者指定的对象为空或不表示脚本对象。