Java反射机制-较全面PPT.ppt
《Java反射机制-较全面PPT.ppt》由会员分享,可在线阅读,更多相关《Java反射机制-较全面PPT.ppt(24页珍藏版)》请在三一办公上搜索。
1、Java反射机制,概述,本课程主要讲述Java反射机制本课程要求大家对Java泛型知识有所了解,因为程序代码中大量使用了泛型相关知识,2010-12-2,第2页,成都天府软件园有限公司TOSC-ITO,目录,Java反射简介4Class Object 8动态实例化 11Method使用 14Field使用 16实用案例 18总结 22,2010-12-2,第3页,成都天府软件园有限公司TOSC-ITO,动态语言,“程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”。从这个观点看,Perl,Python,Ruby是动态语言,C+,Java,C#不是动态语言。尽管在这样的定义与分类下J
2、ava不是动态语言,它却有着一个非常突出的动态相关机制:Reflection。,2010-12-2,第4页,成都天府软件园有限公司TOSC-ITO,什么是反射,反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。,2010-12-2,第5页,成都天府软件园有限公司TOSC-ITO,Java反射的应用,Spring框架:IOC(控制反转)Hi
3、bernate框架:关联映射等白盒测试,2010-12-2,第6页,成都天府软件园有限公司TOSC-ITO,Java 反射相关的API,java.lang包下Class:表示一个正在运行的 Java 应用程序中的类和接口,是Reflection的起源包下Field 类:代表类的成员变量(也称类的属性)Method类:代表类的方法Constructor 类:代表类的构造方法Array类:提供了动态创建数组,以及访问数组的元素的静态方法,2010-12-2,第7页,成都天府软件园有限公司TOSC-ITO,Class,类是程序的一部分,每个类都有一个Class对象。换言之,每当编写并且编译了一个新类
4、,就会产生一个Class对象Class 没有公共构造方法。Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的,因此不能显式地声明一个Class对象Class是Reflection起源。要想操纵类中的属性和方法,都必须从获取Class object开始,2010-12-2,第8页,成都天府软件园有限公司TOSC-ITO,第一个实例就用大家非常熟悉的ArrayList类,我们尝试来获取ArrayList申明的方法。public static void main(String args)ArrayList aList=new ArrayL
5、ist();Class alClass=aList.getClass();System.out.println(+alClass);System.out.println(+alClass.getName();Method alMethod=alClass.getDeclaredMethods();for(Method method:alMethod)System.out.println(+method);System.out.println(+method.getName();,案例一,2010-12-2,第9页,成都天府软件园有限公司TOSC-ITO,获取Class Object,2010-
6、12-2,第10页,成都天府软件园有限公司TOSC-ITO,根据具体情形和个人爱好,可以选择下面任何一种方式获得Class对象,通过反射实例化对象,平常情况我们通过new Object来生成一个类的实例,但有时候我们没法直接new,只能通过反射动态生成。实例化无参构造函数的对象,两种方式:Class.newInstance();Class.getConstructor(new Class).newInstance(new Object)实例化带参构造函数的对象:clazz.getConstructor(Class.parameterTypes).newInstance(Object.inita
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 反射 机制 全面 PPT
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5436045.html