Java脚本编程:过程调用、脚本编译与Java类使用
1. Java脚本API的过程调用与脚本编译
Java脚本API支持从Java直接调用用脚本语言编写的过程、函数和方法,这通过 Invocable 接口实现。如果脚本引擎支持过程调用,它会实现 Invocable 接口,Nashorn引擎就支持过程调用。被调用的过程可以实现为顶级函数或对象的方法。
- 调用顶级函数 :使用
Invocable接口的invokeFunction()方法调用脚本中的顶级函数。 - 调用对象方法 :使用
Invocable接口的invokeMethod()方法调用对象的方法。
在调用之前,引擎必须先对顶级函数和要调用其方法的对象进行求值。
同时,Java脚本API还允许将脚本编译一次,存储在脚本引擎中,并多次执行该脚本,这通过 Compilable 接口实现。支持脚本编译的脚本引擎需要实现 Compilable 接口,调用其 compile() 方法编译脚本,该方法返回 CompiledScript 的实例,调用其 eval() 方法执行脚本。
需要注意的是,脚本引擎实现 Invocable
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



