类对象的获取:
1. 直接使用Person.class
2. obj.getClass()
3. Class.forName("xxx");
获取方法:
- getMethods获取所有包含父类的public方法
- getMethod获取指定包含父类的public方法
- getDeclaredMethods获取所有非父类方法
- getDeclaredMethod获取指定非父类方法
获取构造方法:
- getConstructors获取所有包含父类的public构造方法
- getConstructor获取指定包含父类的public构造方法
- getDeclaredConstructors获取所有非父类构造方法
- getDeclaredConstructo获取指定非父类构造方法
获取成员变量:
- getFields获取所有包含父类的public成员变量
- getField获取指定包含父类的public成员变量
- getDeclaredFields获取所有非父类成员变量
- getDeclaredField获取指定非父类成员变量
获得Field类对象后,可以通过set方法设置值。访问private字段要设置setAccessible(true)。
获取父类:getSuperClass
获取接口:getInterfaces
创建实例:Class或Constructor类的newInstance
int.class和Integer.class是不同的。