Java反射机制中获取类中的方法
1.获取类中public的方法(包括父类的方法和接口):getMethods();
public class TestMethod {
public void run(){
System.out.println("run...");
}
private void eat(){
System.out.println("eat...");
}
class A extends TestMethod{
public void sleep(){
System.out.println("sleep...");
}
}
public static void main(String[] args) {
TestMethod testMethod = new TestMethod();
A a = testMethod.new A();
Class c =a.getClass();
//获取public方法,包括父类方法和接口
Method[] m =c.getMethods();
for(Method str:m){
System.out.print(str.getName()+" ");
}
}
}
2.获取本类中的方法,包括private方法(不包括父类的方法)
//获取本类中的定义方法,包括private,但不包括父类的方法
Method[] m1 =c.getDeclaredMethods();
for(Method str:m1){
System.out.print(str.getName()+" "); //sleep
}