作者NullLife (默耘)
看板java
标题[问题] 想请问如何用eval呼叫function
时间Fri Apr 19 20:52:25 2013
今天有爬了版上eval的文章,有试着玩了一下
可是发现它利用JavaScript去做完成字串执行指令这个动作,
有稍微估狗了一下如何呼叫function,
爬到的是将function写进去scrip,再去执行...
可是我想要执行的是我jar档里的function啊啊啊~
例如我现在有两个function
private void kerker1() {
System.out.println("I'm kerker1");
}
private void kerker2() {
System.out.println("I'm kerker2");
}
因为function名有规律性存在,所以想写个回圈去跑就好,不用写的落落长,
就类似是...
for (int i = 1 ; i <= 2; i++) {
xxx.eval("ker" + i + "()");
}
就能帮我呼叫ker1()跟ker2()...
不晓得有没有人知道该怎麽写,感激不尽<(_ _)>
刚刚爬到一篇文
http://ppt.cc/BweE
我把code贴过来玩,可是我javax.script.*似乎缺ExecuteScript@@?
我没办法建立这个物件耶...
耍笨了...= ="
这篇文可以用,也感谢推文,我也来去爬文看看,感恩!!
--
所以想着昨天期待明天 我却活在这两者的中间
现实的问题那麽讨厌 可是不得不面对
和平奖的礼物是金钱 领导运动获得了地位
黄玠
矛与盾的故事不断上演 到底什麽才是对
相片收集簿
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 180.218.154.76
1F:推 PsMonkey:reflection? 04/19 21:25
感谢板主 \^0^/
※ 编辑: NullLife 来自: 180.218.154.76 (04/19 21:28)
2F:→ andymai:getDeclaredMethod、invoke 04/19 21:31
感谢这位版大,我爬文的方法也可以用,我会在斟酌用什麽方法好,感恩。
※ 编辑: NullLife 来自: 180.218.154.76 (04/19 21:35)
3F:→ ssccg:你看的资料是eval javascript,可是你想跑的function是java? 04/19 21:38
4F:→ NullLife:是java的function没错 那篇文的方法原来是把整个class 04/19 21:44
5F:→ NullLife:丢到engine里 就可以呼叫了 04/19 21:46
※ 编辑: NullLife 来自: 180.218.154.76 (04/19 21:55)
6F:→ sbrhsieh:可以把Java object放到engine global scope里,js码去使用 04/19 21:56
7F:→ sbrhsieh:或是在javascript码里contruct java object来使用。 04/19 21:57
8F:→ andymai:其实版主说的就是了~我只是直接给关键字 XD 04/20 00:01
9F:→ coolcomm:不能多写一个 void kerker(int i) 吗@_@ 04/20 12:24
对不起,我举例不好QQ
如果说function名称有逻辑性,但做的内容跟这个逻辑性毫无关系,
就没办法传个参数进去处理,而且...我要呼叫的是人家写给我的工具,
所以没有办法自己去设计 >"<
※ 编辑: NullLife 来自: 180.218.154.76 (04/21 10:03)