Java反射Refletion

妄, / 2023-08-23 / 原文

什么是反射?

反射(Refletion)就是:加载类,并允许以编程的方式解剖类中的各种成分(成员变量、方法、构造器等)

反射的作用

1. 可以在运行时得到一个类的全部成分然后操作
2. 可以破坏封装性。(很突出)
3. 也可以破坏泛型的约束性。(很突出)
4. 更重要的用途是适合:做Java高级框架
5. 基本上主流框架都会基于反射设计一些通用技术功能。

反射获取字节码对象方式

方式一

Class c1=类名.class;

方式二

调用Class提供方法:public static Class forName(String className);
即Class c1=Class.forName(String 类名/全类名);

方式三

Class c1=对象名.getClass()

反射获取类的构造器

反射获取类的成员变量