- 什么是反射
- 定义
- AVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法。
- 种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制
- 实现功能
- 在运行时判断任意一个对象所属的类
- 在运行时构造任意一个类的对象
- 在运行时判断任意一个类所具有的成员变量和方法
- 在运行时调用任意一个对象的方法
- 生成动态代理
- 定义
- 反射的源头
- Class的含义
- Class : 类类实例表示正在运行的Java应用程序中的类和接口
- Class类型的对象: 在一个类型加载到内存中就存在一个属于表示当前类型的Class对象(唯一的,不变的)
- 获取Class对象
- 类名.class
- Class.forName(权限定名)
- 对象.getClass()
- 对象获取方法
- getModifiers():获取修饰符
- getInterfaces():确定该对象表现的接口和类
- getSuperclass():返回该对象的父类
- Class的含义
- 属性和方法
- 属性:Field 作为描述属性的对象
- getDeclaredField(String name ):返回声明对象
- getDeclaredFields():返回申明对象的数组
- getField(String name):返回公共的对象
- getFields():返回公共的对象的数组
- 方法:Method 即作为描述方法的对象
- getDeclaredMethod( String name):返回声明对象
- getDeclaredMethods( ):返回声明方法的数组
- getMethod(String name):返回公共的方法
- getMethods():返回公共的方法的数组
- 属性:Field 作为描述属性的对象
- 创建对象
- .Class ->newInstance() 默认调用空构造为对象初始化信息-->不推荐使用
- Constructor->newInstance() 创建对象
- 1、获取某一个类中构造器
- 构造器<T> getConstructor(类<?>... parameterTypes)
- 构造器<?>[] getConstructors() 返回一个包含 构造器对象的数组
- 构造器<T> getDeclaredConstructor(类<?>... parameterTypes)
- 构造器<?>[] getDeclaredConstructors()
- 2、调用Constructor类提供的newInstance方法,创建对象的时候调用当前构造器初始化信息
- con.setAccessible(true)私有的构造器先忽略权限再次使用
- 1、获取某一个类中构造器
Java中的反射
最新推荐文章于 2025-05-31 16:10:35 发布