从完全限定名称获取类

时间:2014-04-20 08:52:05

标签: java string class

我需要翻译一个String "com.foo.Foo",其值为public static void command(String name, String scriptfolder) ,但我需要让它位于那里,并在里面调用一个方法。

{{1}}

这是方法的签名

由于

2 个答案:

答案 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 例外