[英]call static method given a class object in java
如果
class MyClass {
public static void main(String[] str) {
System.out.println("hello world");
}
}
// in some other file and method
Class klass = Class.forName("MyClass");
我怎样才能调用MyClass.main
? 我在编译时没有字符串“MyClass”,所以我不能简单地调用MyClass.main(String[]{})
。
您使用反射来调用方法(或创建对象等)。 下面是一个在MyClass
调用main()
方法的示例。 您需要确保的是MyClass
在类路径中。
Class<?> cls = Class.forName("MyClass");
Method m = cls.getMethod("main", String[].class);
String[] params = null;
m.invoke(null, (Object) params);
如果您在编译时没有“MyClass”字符串,那么您需要查找它,框架用于执行此操作的常用方法:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.