反射简介
在没有加载到内存之前,每一个类都作为.class文件保存在磁盘中,一旦加载到jvm内存,会在方法区创建一个Class对象,保存这个类的所有信息。
通过反射方法,可以在程序运行过程中,动态获取类信息,入构造方法,属性,名称,等。
class 入口类

常用api
- 获取class对象
- Class.forName(“com.xx.Pet”)
- 类型.class,列如 Pet.class.
- 对象.getClass,例入pet.getClass90.
- newInstance() 创建对象
- 访问属性
- 调用方法
- 获取注解
- 获取类加载器
构造器类Constructor

常用api
- newInstance(Object … initargs) 根据构造参数 创建对象
Field 类

常用api
1.获取变量的类型:
- Field.getType():返回这个变量的类型
- Field.getGenericType():如果当前属性有签名属性类型就返回,否则就返回 Field.getType()
- isEnumConstant() : 判断这个属性是否是枚举类
2.获取成员变量的修饰符:
- Field.getModifiers() 以整数形式返回由此 Field 对象表示的字段的 Java 语言修饰符
3.获取和修改成员变量的值:
- getName() : 获取属性的名字
- get(Object obj) 返回指定对象obj上此 Field 表示的字段的值
- set(Object obj, Object value) 将指定对象变量上此 Field 对象表示的字段设置为指定的新值
Method 类

常用api
- invoke(Object obj, Object… args) 执行指定对象obj的方法
6107

被折叠的 条评论
为什么被折叠?



