public class Test {
public static void main(String[] args)throws Exception {
// TODO Auto-generated method stub
A a=new A();
String i="setB";
Method cc=a.getClass().getMethod(i, String.class);//获取方法
//String.class如果没有就是new Class[0]
System.out.println(cc.getName());
cc.invoke(a, "aa");
//调用方法
System.out.println(a.getB());
}
}
class A{
private int a=0;
private String b="abc";
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
public String getB() {
return b;
}
public void setB(String b) {
this.b = b;
}
}
你可以用Class的方法
getDeclaredMethods()
得到A类型里的所有方法(不包括继承来的);
getMethods()
得到所有的方法
返回值是 Method[]
循环对照吧。加上get,set
Method类型有getName()的方法,看看名字是不是你要的就行了。
可以这样 :
Java代码
Method[] methods = bo.getClass().getMethods();
for (Method m:methods) {
method.getName();
}
用反射技术啊