Javaでは、リフレクション系の機能を使うと、メソッドも実行できます。
自前でスクリプト言語を開発して、APIに横流しすることができちゃいますw
リフレクションでインスタンスメソッドを実行するサンプル
引数で受けた文字列を標準出力するメソッドを用意。
このメソッドをリフレクションで実行します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import java.lang.reflect.Method; public class RefMethodTest { public static void main(String[] args) { try { RefMethodTest obj = new RefMethodTest(); Class<? extends Object> clazz = obj.getClass(); Method method = clazz.getDeclaredMethod("println",String.class); method.invoke(obj, "出力してね"); method.invoke(obj, "もういっかい"); }catch(Exception e) { e.printStackTrace(); } } public void println(String str) { System.out.println(str); } } |
実行結果
1 2 | 出力してね もういっかい |
staticメソッドを実行するには・・・?
staticメソッドを実行する方法は、こちらを見てください。