反射:
在运行状态中,对于任意一个类。都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能成为java的反射机制。
反射的功能:
在运行时获取任意一个对象所属的类型信息,包括修饰符、泛型、父类、实现的接口、注解等;
在运行时构造任意一个类的对象;
在运行时获取任意一个类所具有的构造方法、成员变量和方法;
在运行时访问任意一个对象的成员变量和方法;
反射的应用:
1.通过使用类全名创建类实例来使用外部用户定义的类
2.开发类浏览器和智能IDE。
3.在测试工具中用于检测类的内部结构。
4.在框架开发中用于实现配置信息的处理。
5.实现Java的动态代理。
使用反射
反射机制里主要会用到以下四种类:
1.java.lang.Class.java:类对象;
2.java.lang.reflect.Constructor.java:类的构造器对象;
3.java.lang.reflect.Method.java:类的方法对象;
4.java.lang.reflect.Field.java:类的属性对象;
网友评论