作者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)