【发布时间】:2018-07-17 11:08:05
【问题描述】:
我用java反射写了下面的代码。在这段代码中,我调用了 method1() ,它有一个参数并且代码运行没有错误。没关系。但是如何调用没有参数的 method2() 和 method3() 呢?如何在java反射中调用没有参数的方法? Java 是否支持这样的功能?
import java.lang.reflect.Method;
class MethodCallTest {
public static void main(String[] args) {
MethodCallTest mct = new MethodCallTest();
mct.start();
}
private void start(){
try{
Class<?> c = getClass();
Method m1 = c.getDeclaredMethod("method1", String.class);
m1.invoke(this, "method1");
}catch(Exception e){
e.printStackTrace();
}
}
private void method1(String s){
System.out.println("Hello from " + s);
}
private static void method2(){
System.out.println("Hello from method2");
}
private static void method3(){
System.out.println("Hello from method3");
}
}
【问题讨论】:
-
第二个变量是vargs
标签: java methods reflection