一丶Class中经常使用方法详解
1)getFields()
java
只能获取到运行时类中及其父类中声明为public的属性spa
2)getDeclaredFields()
code
获取运行时类自己声明的全部属性对象
3)getMethods()
blog
获取运行时类中及其父类中声明为public的方法接口
4)getDeclaredMethods()
get
获取运行时类自己声明的全部方法io
5)getSuperclass()
class
获取运行时类的父类泛型
获取运行时类带泛型的父类
7)获取运行时类的父类的泛型以下:
Class clazz = Person.class; Type type = clazz.getGenericSuperclass();//获取带泛型的父类 ParameterizedType param = (ParameterizedType)type;//强转为子类 Type[] ars = param.getActualTypeArguments();//得到父类的泛型,可能有多个,例如map<k,v> System.out.println(((Class)ars[0]).getName()); //Class是Type接口的实现类,因此能够强转,输出父类的泛型
8)getInterfaces()
获取运行时类实现的接口
9)getPackage()
获取运行时类所在的包
10)getAnnotations()
获取运行时类的注解
二丶Field中经常使用方法详解
1)getModifiers()
得到属性的权限修饰符,返回对应的整数形式
2)getType()
获取属性的类型,返回的是Class对象
3)getName()
获取属性名
三丶Method中经常使用方法详解
获取方法上的全部注解
2)getName()
获取方法名
3)getModifiers()
得到方法的权限修饰符,返回对应的整数形式
4)getReturnType()
获取方法的返回值类型,返回的是Class对象
获取方法的形参类型,返回的是Class[] 对象
获取方法的抛出异常类型,返回的是Class[] 对象