1 / 36
文档名称:

java教学0韩建雷java反射机制.pptx

格式:pptx   大小:175KB   页数:36页
下载后只包含 1 个 PPTX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

java教学0韩建雷java反射机制.pptx

上传人:wz_198613 2018/11/26 文件大小:175 KB

下载得到文件列表

java教学0韩建雷java反射机制.pptx

文档介绍

文档介绍:议程
概述
主要功能
分析类
取得Class 对象
取得类名
找出超类
确定某类实现的接口
检查接口
取得类字段
取得构造方法
取得方法信息
取得字段的值
创建对象
库文档分享
概述
在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法?答案是肯定的。这种动态获取类的信息以及动态调用对象的方法的功能来自于Java 语言的反射(Reflection)机制。
Reflection是一系列的API,它用于表示或者处理当前JVM中的类,接口和对象。
库文档分享
主要功能
确定一个对象的类
取出类的modifiers,数据成员,方法,构造器和超类
找出某个接口里定义的常量和方法说明
创建一个类实例,这个实例在运行时刻才有名字(运行时间才生成的对象)
取得和设定对象数据成员的值,如果数据成员名是运行时刻确定的也能做倒。
在运行时刻调用动态对象的方法
创建数组,数组大小和类型在运行时刻才确定。也能更改数组成员的值。
库文档分享
分析类
如果你在编一个类浏览器程序,你就需要取得类在运行时刻的有关信息。比如,你想显示某个类的数据成员名,方法和构造器。再比如,你想显示某个类到底实现了哪些接口。这些信息可以由自省此类的Class对象来取得。
对于每个类而言,JRE都为其保留一个不变的Class类型的对象。一个Class对象包含了特定某个类的有关信息。你可以通过调用Class对象的有关方法,返回特定类的构造器对象,方法对象和数据成员对象。通过这些返回的对象,你就可以得到构造器,方法和数据成员的所有详细原始定义。
Class对象也包含接口信息。你可以调用Class对象的某些方法来取得某接口的modifiers,方法和公共常数。如果Class对象用来表示接口,那么Class对象的部份方法就不可用。比如getConstructors,接口根本没构造器,所以这个方法就没用。
库文档分享
取得Class对象
如果可以取得某个类的实例,。
请看例子:
mystery是某个类的对象。
Class c = ();
类对象c可以直接输出,请看
JButton jb=new JButton();
Class mc= () ;
("类内容"+() );
如果你想取得某个类对象的超类,可以用getSuperclass方法。本例中,ponent的Class对象,类是TextField的超类。
TextField t = new TextField();
Class c = ();
Class s = ();
运行后直接输出c和s的结果是:
本类内容class
超类内容class
库文档分享
如果你知道类在编译时的名字(类名),取出它的class对象就简单了:类名后跟“.class”后缀就行了。如:
Class c1 = ;
("本类内容+() );
有时候,在编译的时候,对象属于哪个类,类名不知道(多态性),但是在运行的时候就知道对象属于哪个类了(运行时刻绑定)。这时候运行时刻取得对象的类就应该用forName方法。在下例中,如果字串变量strg内容是””,那么用forName方法返回Button的Class 对象。
如:
库文档分享
String strg="";
Class c2;
c2=null;
try
{
c2= (strg) ;
}
catch(ClassNotFoundException e)
{
("没有这个类");
(1);
}
("forName 内容"+() );
库文档分享
取得类名
每个类都有类名,比如下面的类名就是Point
public class Point {int x, y;}
在运行时刻,类名可以调用Class对象的getName方法来取得。getName返回一个字串,字串是完整的类名。
下面举例:例子首先取得对象的Class对象,然后调用getName得到类名。
库文档分享
import

最近更新

二零二五年度智慧物业管理车位租赁及增值服务.. 43页

2025年最新版委托创作合同范文3篇 15页

河北省2025年安装定额第八册 7页

2025年最新植树节创意活动方案 13页

二零二五年度房地产小程序开发与在线营销服务.. 43页

宠物市场全球化趋势分析 34页

模具工程师工作计划 5页

桩基螺旋箍筋工程量计算方法 12页

2025年最新护士人员个人工作总结范文五篇 10页

二零二五年度工业大数据工厂承包分析合同3篇 44页

MOF基吸附材料在环保产业中的战略布局与发展趋.. 33页

AI与工业设计行业的深度融合:技术发展市场机.. 31页

二零二五年度小店铺劳动合同与员工培训进修及.. 38页

二零二五年度宿舍安全责任与应急预案协议3篇 40页

二零二五年度客运企业职工福利保障合同3篇 45页

打印机维修申请报告 29页

化工原理期末试题 16页

二零二五年度培训学校师资培训资料非竞争协议.. 35页

冀教版英语七年级上册期末测试卷1 16页

二零二五年度可持续发展项目对赌协议约定倍收.. 49页

2024版建设工程质量保证金 11页

2023北京东城区初一期末(下)英语试卷及答案 8页

淀粉样变学习ppt课件 27页

全国中学生物理竞赛实验指导书思考题参考答案.. 8页

室外道路及管网工程施工进度计划工期保证及赶.. 16页

DLT---电力建设施工质量验收及评价规程-第部分.. 37页

关于印发《自治区财政存量资金管理暂行办法》.. 11页

根据河北省电化教育馆《关于举办河北省第一届.. 86页

一梦漫言 41页

约伯记查经第一讲苦难与概论(于宏洁).doc 10页