我需要翻译一个String
"com.foo.Foo"
,其值为public static void command(String name, String scriptfolder)
,但我需要让它位于那里,并在里面调用一个方法。
{{1}}
这是方法的签名
由于
答案 0 :(得分:7)
你试过吗
Class.forName("com.foo.Foo");
编辑: 要调用静态方法,您需要执行以下操作:
Class clazz = Class.forName("com.foo.Foo");
Method method = clazz.getMethod("methodName", String.class);
Object o = method.invoke(null, "whatever");
这取决于您的方法及其参数。有关详细信息,请参阅反射教程: http://docs.oracle.com/javase/tutorial/reflect/
答案 1 :(得分:1)
如果您要翻译以字符串形式保存的类名,您必须寻找
Class.forName("Your.Class.String");
但你必须处理异常
注意:只是提醒您处理 ClassNotFound 例外