您的位置:首页 > 其它

反射机制

2016-02-02 16:12 288 查看
反射:

概念:

在运行时状态,

对于任意一个类,知道这个类的属性和方法

对于任意一个对象,访问它的任意一个属性和方法

动态获取类或者对象的信息以及动态调用对象方法的公共,称为java语言的反射机制

使用:

1) 通过反射获取类的属性和方法:

[code]> 获取类或者接口的Class对象

Class.forName("完整类名");
类名.class
对象名.getClass()

> 获取成员变量 Field
cls.getField("成员变量名") - 获取某一个公有成员变量
cls.getFields() - 获取所有共有成员变量
cls.getDeclaredField("成员变量名") - 获取定义的成员变量
cls.getDeclaredFields() - 获取所有定义的成员变量


获取方法 Method

[code]cls.getMethod("成员变量名") - 获取某一个公有成员方法
cls.getMethods() - 获取所有共有成员方法
cls.getDeclaredMethod("成员变量名") - 获取定义的成员方法
cls.getDeclaredMethods() - 获取所有定义的成员方法


调用方法

[code]a)
 1,获取对应需要调用的方法对象

 2, 实例化一个对应的对象

 Object obj1 = Class.newInstance();

 3, 通过Method调用方法
 Method.invoke(obj1,new Object[]{参数1,参数1,参数1,...})  

b)  构造器

Constructor constructor =
    Class.getConstructor(new Class[]{参数1类型Class对象,...});

 构造器.newInstance(new Object[]{参数1,参数1,参数1,...})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: