JAVA反射机制ppt.ppt

JAVA反射机制ppt.ppt

ID:48737618

大小:186.50 KB

页数:15页

时间:2020-01-21

JAVA反射机制ppt.ppt_第1页
JAVA反射机制ppt.ppt_第2页
JAVA反射机制ppt.ppt_第3页
JAVA反射机制ppt.ppt_第4页
JAVA反射机制ppt.ppt_第5页
资源描述:

《JAVA反射机制ppt.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Java反射机制目标理解Java反射机制应用Java反射API什么是反射在运行时加载、探知、使用编译期间完全未知的classes允许运行中的Java程序对自身进行“自审”Class类反射的起源当类加载以后,JVM便自动产生一个Class对象使用该对象就可以获取一个类中的方法、成员以及 构造方法的声明和定义等信息反射API反射API用于反应在当前Java虚拟机中的类、接口或者对象信息功能—获取一个对象的类信息.—获取一个类的访问修饰符、成员、方法、构造方法以 及超类的信息.—检获属于一个接口的常量和方法声明.—创建一个直到程序运行期间才知道名字的类的实例.

2、—获取并设置一个对象的成员,甚至这个成员的名字是 在程序运行期间才知道.—检测一个在运行期间才知道名字的对象的方法使用Reflectionjava.lang.relfect包遵循三个步骤 第一步是获得你想操作的类的java.lang.Class对象 第二步是调用诸如getDeclaredMethods的方法 第三步使用reflectionAPI来操作这些信息获得一个Class对象如果一个类的实例已经得到,你可以使用【Classc=对象名.getClass();】例:TextFieldt=newTextField();Classc=t.getClass()

3、;Classs=c.getSuperclass();如果你在编译期知道类的名字,你可以使用如下的方法Classc=java.awt.Button.class;或者Classc=Integer.TYPE;如果类名在编译期不知道,但是在运行期可以获得,你可以使用下面的方法Classc=Class.forName(strg);简单示例importjava.lang.reflect.*;publicclassSearchMethods{publicstaticvoidmain(Stringargs[]){try{Classc=Class.forName(args

4、[0]);Methodm[]=c.getDeclaredMethods();for(inti=0;i

5、orgetDeclaredConstructor(Class[]params) --获得使用特定参数类型的构造函数(与接入级别无关)•Constructor[]getDeclaredConstructors() --获得类的所有构造函数(与接入级别无关)应用反射API2.获取类定义变量•FieldgetField(Stringname) --获得命名的公共字段•Field[]getFields() --获得类的所有公共字段•FieldgetDeclaredField(Stringname) --获得类声明的命名的字段•Field[]getDeclared

6、Fields() --获得类声明的所有字段3.获取类定义方法•MethodgetMethod(Stringname, Class[]params) --使用特定的参数类型,获得命名的公共方法•Method[]getMethods() --获得类的所有公共方法•MethodgetDeclaredMethod(Stringname, Class[]params) --使用特写的参数类型,获得类声明的命名的方法•Method[]getDeclaredMethods() --获得类声明的所有方法应用反射API创建对象获取构造器信息找出类的方法获取类的字段根据方法

7、的名称来执行方法实例:利用反射动态实例化对象1定义一个类的配置文件如下:实例:利用反射动态实例化对象2新建一个Account帐号类如下:实例:利用反射动态实例化对象3新建一个反射工具类实例化Account,并调用SET方法注入参数如下:实例:利用反射动态实例化对象4新建一个测试方法如下:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。