Java反射机制的工作原理详解.docx
《Java反射机制的工作原理详解.docx》由会员分享,可在线阅读,更多相关《Java反射机制的工作原理详解.docx(7页珍藏版)》请在三一办公上搜索。
1、Java反射机制的工作原理详解 Java反射机制的工作原理详解 JAVA反射机制工作原理: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;生成动态代理。 1. 得到某个对象的属性 1 public Object getProperty(Object owner,
2、 String fieldName) throws Exception 2 Class ownerClass = owner.getClass; 3 4 Field field = ownerClass.getField(fieldName); 5 6 Object property = field.get(owner); 7 8 return property; 9 Class ownerClass = owner.getClass:得到该对象的Class。 Field field = ownerClass.getField(fieldName):通过Class得到类声明的属性。 Objec
3、t property = field.get(owner):通过对象得到该属性的实例,如果这个属性是非公有的,这里会报IllegalAccessException。 2. 得到某个类的静态属性 1 public Object getStaticProperty(String className, String fieldName) 2 throws Exception 3 Class ownerClass = Class.forName(className); 4 5 Field field = ownerClass.getField(fieldName); 6 7 Object proper
4、ty = field.get(ownerClass); 8 9 return property; 10 Class ownerClass = Class.forName(className) :首先得到这个类的Class。 Field field = ownerClass.getField(fieldName):和上面一样,通过Class得到类声明的属性。 Object property = field.get(ownerClass) :这里和上面有些不同,因为该属性是静态的,所以直接从类的Class里取。 3. 执行某对象的方法 1 public Object invokeMethod(Ob
5、ject owner, String methodName, Object args) throws Exception 2 3 Class ownerClass = owner.getClass; 4 5 Class argsClass = new Classargs.length; 6 7 for (int i = 0, j = args.length; i j; i+) 8 argsClassi = argsi.getClass; 9 10 11 Method method = ownerClass.getMethod(methodName, argsClass); 12 13 retu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 反射 机制 工作 原理 详解

链接地址:https://www.31ppt.com/p-3061374.html