反射机制
2016-02-02 16:12
288 查看
反射:
概念:
在运行时状态,
对于任意一个类,知道这个类的属性和方法
对于任意一个对象,访问它的任意一个属性和方法
动态获取类或者对象的信息以及动态调用对象方法的公共,称为java语言的反射机制
使用:
1) 通过反射获取类的属性和方法:
获取方法 Method
调用方法
概念:
在运行时状态,
对于任意一个类,知道这个类的属性和方法
对于任意一个对象,访问它的任意一个属性和方法
动态获取类或者对象的信息以及动态调用对象方法的公共,称为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,...})
相关文章推荐
- 存储过程的优缺点
- ReactiveCocoa学习总结
- Java用Cookie简单限制点赞次数
- 图的路径:最短路-四种算法
- 编译Redis出错
- OpenCV Android 打开前置后置摄像头
- 关于重新实现TextView 的超链接点击事件
- 设计模式(1)---工厂模式
- 痛苦史---调稳 外设+无驱动+无硬件+不稳定平板的通信
- spring 事务声明
- iOS程序猿之CAShapeLayer类(动画)
- chown, chmod
- C#委托、事件、工厂模式个人见解
- 误差理论、贝叶斯、最大似然与最小二乘估计
- UIGestureRecognizer-手势识别器
- 树状数组 模板
- uva1382- Distant Galaxy (枚举)
- *p++和*++p
- 微信开放平台全网发布61009错误处理
- Hive 5、Hive 的数据类型 和 DDL Data Definition Language)