JAVA中通过反射机制获取方法的修饰符,返回值类型,方法名,形参列表
与Field中没太大区别:
-
获取修饰符列表
Modifier.toString(method.getModifiers()) -
获取方法返回值类型
method.getReturnType().getSimpleName() -
获取方法名
method.getName() -
获取方法形参列表
Class[] parameterTypes = method.getParameterTypes();
for (Class parameterType : parameterTypes){
System.out.println(parameterType.getSimpleName());
public class MethodTest02 {
public static void main(String[] args) throws Exception{
Class c = Class.forName("reflection.method.UserService");
//获取类下的所有方法
Method[] methods = c.getDeclaredMethods();
for (Method method : methods){
//获取修饰符列表
System.out.println(Modifier.toString(method.getModifiers()));
//获取方法返回值类型
System.out.println(method.getReturnType().getSimpleName());
//获取方法名
System.out.println(method.getName());
//获取方法形参列表
Class[] parameterTypes = method.getParameterTypes();
for (Class parameterType : parameterTypes){
System.out.println(parameterType.getSimpleName());
}
System.out.println("==========================");
}
}
}