1,Method[] getDeclaredMethods()方法
返回一个数组,该数组包含反映该类对象所表示的类或接口的所有声明方法的方法对象,包括public、protected、default(package)access和private方法,但不包括继承的方法。
Method methods2[]=class1.getDeclaredMethods();
for (Method method2 : methods2) {
System.out.println("方法的名称是:"+method2);
//System.out.println("方法的名称是"+method2.getName());
}
2,getMethods()方法
返回一个数组,其中包含反映该类对象所表示的类或接口的所有公共方法的方法对象,包括由类或接口声明的方法对象以及从父类和父接口继承的方法对象。
Method methods[]=class1.getMethods();
for (Method method : methods) {
System.out.println("公有的方法的名称是:"+method);
//System.out.println("方法的名称是:"+method.getName());
}
3,Method getMethod(String name,Class<?>...pqrameterTypes)方法
返回一个指定名称和形参类型的公共方法的Method对象。
Method method3=class1.getMethod("getName",null);
System.out.println("方法的名称是:"+method3);
4,Method getDeclaredMethod(String name,Class<?>.... parameterTypes)
获取一个指定名称和形参类型的方法的Method对象
Method method4=class1.getDeclaredMethod("operation",String.class);
Method method41=class1.getDeclaredMethod("showMessage",String.class);
Method method42=class1.getDeclaredMethod("name",String.class);
Method method43=class1.getDeclaredMethod("init",null);
System.out.println("方法的名称是:"+method4);
System.out.println("方法的名称是:"+method41);
System.out.println("方法的名称是:"+method42);
System.out.println("方法的名称是:"+method43);