- 反射的作用
- 获取class的四种方式
- 反射的常用方法
- 反射的应用
反射的作用
通过反射你可以获取任意一个类的所有属性和方法,你还可以调用这些方法和属性。
获取class的四种方式
1.知道具体类的情况下可以使用:
Class alunbarClass = TargetObject.class;
但是我们一般是不知道具体类的,基本都是通过遍历包下面的类来获取 Class 对象,通过此方式获取 Class 对象不会进行初始化
2.通过 Class.forName()
传入类的路径获取:
Class alunbarClass1 = Class.forName("cn.javaguide.TargetObject");
3.通过对象实例instance.getClass()
获取:
TargetObject o = new TargetObject();
Class alunbarClass2 = o.getClass();
4.通过类加载器xxxClassLoader.loadClass()
传入类路径获取:
Class clazz = ClassLoader.loadClass("cn.javaguide.TargetObject");
通过类加载器获取 Class 对象不会进行初始化,意味着不进行包括初始化等一些列步骤,静态块和静态对象不会得到执行
反射的常用方法
https://blog.csdn.net/qq_42487559/article/details/104255007
反射的应用
Spring、MyBatis等众多框架,JDK动态代理