孙卫琴《Java面向对象编程》配套PPT--java_base10_refl.ppt
《孙卫琴《Java面向对象编程》配套PPT--java_base10_refl.ppt》由会员分享,可在线阅读,更多相关《孙卫琴《Java面向对象编程》配套PPT--java_base10_refl.ppt(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、制作制作:www.javathinker.orgwww.javathinker.org 反射反射Java Reflection Api的作用的作用检查运行时的对象检查运行时的对象动态更新字段动态更新字段调用方法调用方法反射主要的类:反射主要的类:java.lang.Class;java.lang.reflect.Method;java.lang.reflect.Field;java.lang.Constructor制作制作:www.javathinker.orgwww.javathinker.org检查运行时的对象检查运行时的对象1.通过对象的通过对象的getClass方法,获得方法,获得Cl
2、ass对象对象2.通通过过Class对对象象的的getMethods()方方法法获获得得所所有有的的方法方法3.通通过过Class对对象象的的getFields()方方法法获获得得所所有有的的public字段字段Person person=new Person();Class personClass=person.getClass();Method personMethords=personClass.getMethods();Field personFields=personClass.getFields();制作制作:www.javathinker.orgwww.javathinker.o
3、rg动态动态访问访问对象的字段对象的字段Field提供了提供了1.getXXX(Object)方方法法,获获得得特特定定对对象象的的某某个个字字段的值段的值2.setXXX(Object,XXX)来来设设置置特特定定对对象象的的个个字字段段的值的值以上以上XXX表示数据类型表示数据类型制作制作:www.javathinker.orgwww.javathinker.org动态动态访问访问对象的字段对象的字段Person person=new Person(linda,10);Class personClass=person.getClass();Field ageField=personClas
4、s.getField(age);/设定person的年龄ageField.set(person,new Integer(12);/获得person的年龄int age=ageField.getInt(person);System.out.print(age);参看reflect.sample.AccessPersonFields类制作制作:www.javathinker.orgwww.javathinker.org动态动态访问访问对象的方法对象的方法Method提供了提供了Object invoke(Object obj,Object args)方法,调用某个特定对象的方法,如果参数或返回类型
5、为基本类型,将自动转化为相应的包装类对象制作制作:www.javathinker.orgwww.javathinker.org动态动态访问访问对象的方法对象的方法Person person=new Person(linda,10);Class personClass=person.getClass();Class parameterClass=new Class1;parameterClass0=Class.forName(int);Method setAgeMethod=personClass.getMethod(setAge,parameterClass);parameterClass=n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java面向对象编程 孙卫琴 Java 面向 对象 编程 配套 PPT java_base10_refl
限制150内