Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。下面是小编整理的关于Java脚本动态用法,欢迎大家参考!
Java脚本动态用法function doSth(){
ize(500,300);
isible(true);
efaultCloseOperation(_ON_CLOSE);
}
function getNames(){
("doSth");
("getNames");
return list;
}
function testJS(){
print('Hello world!');
}
import Reader;
import yList;
import ;
import ings;
import cable;
import ptContext;
import ptEngine;
import ptEngineManager;
import me;
/**
*
* @author hadeslee
*/
public class Test {
public static void main(String[] args)throws Exception {
//根据js的`后缀名生成一个解析JS的脚本解析引擎
ScriptEngine engin=new ScriptEngineManager()ngineByExtension("js");
//查询一下这个引擎是否实现了下面很实用的接口
tln(engin instanceof Invocable);
//声明两个对象,传入到JS里面去
JFrame jf=new JFrame("test");
List list=new ArrayList();
//得到挷定的键值对象,把当前的两个JAVA对象放进去
Bindings bind=teBindings();
("jf",jf);
("list",list);
//把挷下的键值对象放进去,作用域是当前引擎的范围
indings(bind,NE_SCOPE);
//用引擎执行一段写在JS文件里面的代码
Object obj=(new FileReader(""));
//这个时候返回值当然 是null了
tln(obj);
//把当前的引擎强制转为Invocable,这样就可以调用定义在JS文件里面的一个一个函数了
Invocable in=(Invocable)engin;
//得到了从JS里面返回来的对象
List l=(List)keFunction("getNames");
tln(l);
//调用一下定义在JS里面的另一个函数
keFunction("testJS");
//最后调用一个函数,该函数可以使我们前面定义的窗体显示出来
keFunction("doSth");
}
}