Java 反射理解 - litonghui/TechBlog GitHub Wiki

Java 反射理解

运行时通过构造对象,调用方法或属性,生成动态代理

Java 程序中对象在运行时出现的两种类型:编译时类型和运行时类型,编译时的类型由声明该对象时使用,运行时类型由实际赋给对象的类型决定。

Java 反射API

1,Class 类:反射的核心类,可以获取类的属性,方法等内容信息。

通过Class.forName() 方法获取一个类的Class 对象,包名+类名 getName()

2,Field 类:获取和设置属性值

getDeclaredField() 获取所有属性,不包括从父类继承下来的属性
getFields() 获取自身的所有public 属性,包括父类继承下来的

3,Method 获取类方法的信息或者执行方法

getDeclaredMethod() 和 getMethod() 同 Field

4,Construcor 类:获取构造方法

Constructor.newInstance() 创建类的对象实例