反射
文章目录
- 反射
- 获取class对象的三种方式
- 利用反射获取构造方法
- 利用反射获取字段(成员变量)
- 利用反射获取成员方法
- 反射的作用
获取class对象的三种方式
①Class.forName(“全类名”);(源代码阶段使用)
②类名.class(加载阶段使用)
③对象.getClass();(运行阶段使用)
package myflect;public class MyFlectDemo1 {public static void main(String[] args) throws ClassNotFoundException {/** 获取Class对象的三种方式*①Class.forName("全类名");(源代码阶段使用)②类名.class(加载阶段使用)③对象.getClass();(运行阶段使用)** *///1.第一种方式//全类名:包名+类名 myflect.Student//最为常用的Class clazz = Class.forName("myflect.Student");//2.第二种方式//一般当做参数进行传递Class clazz2 = Student.class;//3.第三种方式//当我们已经有了这个类的对象时,才可以使用Student s = new Student();Class clazz3 = s.getClass();System.out.println(clazz==clazz2);System.out.println(clazz2==clazz3);}
}
利用反射获取构造方法
利用反射获取字段(成员变量)
利用反射获取成员方法
反射的作用
①获取一个类里面所有的信息,获取到了之后,再执行其他的业务逻辑
②结合配置文件,动态的创建对象并调用方法
作用
①获取一个类里面所有的信息,获取到了之后,再执行其他的业务逻辑
②结合配置文件,动态的创建对象并调用方法