day 30 2025.5.6
- 反射的作用
在运行期间,获取类的信息,新建实例,使用方法,获取属性和构造器等. - Class类
Class类的实例就是.class文件;
Class类相当于普通类的父类,Class类的实例就是一个普通类. - 获取Class类实例的方法(掌握)
- 调用类的class属性.
- 调用类的实例的getClass()方法.
- 调用Class类的forName(String className)静态方法.
- 通过类加载器.
- 加载指定配置文件的方法(2种)
- 方法1:
//1. 创建Preporties类的实例
//2. 通过new FileInputStream,创建输入流
通过这种方式,文件默认位置路径在module上.
//3. 加载配置文件 使用PrePorties.load(String pathName)
//4. 调用方法
Preporties.setPreporties(String key, String vaule) : 向配置文件中添加键值对.
Preporties.getPreporties(String key) : 通过键找到value值. - 方法2:
//1. 创建Preporties类的实例
//2. 通过ClassLoader,创建输入流
通过这种方式,文件默认位置路径在module中的src文件夹下.
//3. 加载配置文件 使用PrePorties.load(String pathName)
//4. 调用方法
Preporties.setPreporties(String key, String vaule) : 向配置文件中添加键值对.
Preporties.getPreporties(String key) : 通过键找到value值.
- 方法1:
- 反射的应用1:创建运行时类对象
- 方法:
//1. 获取类的Class实例.
//2. 使用newInstance(),创建实例. - Java bean中为什么要带一个公共的无参构造器?
- 子类对象构造器首行默认调用父类无参构造器.(次要)
- 在反射中,用来创建运行时类对象.(主要)
- 在JDK9及以后,newInstance()被称为过失,那它替换成什么结构了?
通过Constructor类调用newInstance(参数列表)方法.
- 方法:
- 反射的应用2:获取运行时类对象的内部结构
- (了解)通过反射,可以获得运行时类对象的所有属性,方法和构造器.
- (熟悉)通过反射,可以获得运行时类对象的父类,接口,包,带泛型的父类和父类的泛型.