package reflectionExercise;
import java.lang.reflect.Method;
public class getMethod {
public static void main(String[] args) {
A a1=new A();
Class c=a1.getClass();
Method m;
try {
m = c.getMethod("print", new Class[]{int.class,int.class});
//or write in this form:
//Method m=c.getMethod("print", int.class,int.class);
//第一个参数写方法名,之后写参数列表
m.invoke(a1, 10,20);
//or write in this form:
//m.invoke(a1, new Object[]{10,20});
//和a1.print(10,20)的效果是一样的
} catch (Exception e) {
e.printStackTrace();
}
}
}
class A{
public void print(int a,int b){
System.out.println(a+b);
}
public void print(String a,String b){
System.out.println(a.toLowerCase()+b.toUpperCase());
}
public void print(){
System.out.println("empty");
}
}
方法反射
最新推荐文章于 2023-08-15 15:10:01 发布