三九宝宝网宝宝百科宝宝知识

java中的反射机制是什么有什么作用啊

12月27日 编辑 39baobao.com

[我的课堂教学评价机制的把握]评价作为课堂教学效果趋向完善的调控环节,在课堂教学的流程中起着重要的作用,通过客观的、科学的评价,教学设计工作将会得以不断地完善和修正。教学评价的实施应该要综合运用各...+阅读

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

JAVA反射(放射)机制:“程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”。从这个观点看,Perl,Python,Ruby是动态语言,C++,Java,C#不是动态语言。但是JAVA有着一个非常突出的动态相关机制:Reflection,用在Java身上指的是我们可以于运行时加载、探知、使用编译期间完全未知的classes。换句话说,Java程序可以加载一个运行时才得知名称的class,获悉其完整构造(但不包括methods定义),并生成其对象实体、或对其fields设值、或唤起其methods。

Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;生成动态代理。

有时候我们说某个语言具有很强的动态性,有时候我们会区分动态和静态的不同技术与作法。我们朗朗上口动态绑定(dynamic binding)、动态链接(dynamic linking)、动态加载(dynamic loading)等。然而“动态”一词其实没有绝对而普遍适用的严格定义,有时候甚至像面向对象当初被导入编程领域一样,一人一把号,各吹各的调。

一般而言,开发者社群说到动态语言,大致认同的一个定义是:“程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”。从这个观点看,Perl,Python,Ruby是动态语言,C++,Java,C#不是动态语言。

尽管在这样的定义与分类下Java不是动态语言,它却有着一个非常突出的动态相关机制:Reflection。这个字的意思是“反射、映象、倒影”,用在Java身上指的是我们可以于运行时加载、探知、使用编译期间完全未知的classes。换句话说,Java程序可以加载一个运行时才得知名称的class,获悉其完整构造(但不包括methods定义),并生成其对象实体、或对其fields设值、或唤起其methods。这种“看透class”的能力(the ability of the program to examine itself)被称为introspection(内省、内观、反省)。Reflection和introspection是常被并提的两个术语。

Java如何能够做出上述的动态特性呢?这是一个深远话题,本文对此只简单介绍一些概念。整个篇幅最主要还是介绍Reflection APIs,也就是让读者知道如何探索class的结构、如何对某个“运行时才获知名称的class”生成一份实体、为其fields设值、调用其methods。本文将谈到java.lang.Class,以及java.lang.reflect中的Method、Field、Constructor等等classes。

以下为关联文档:

我的创意评价机制——合作学习合作学习是新课程改革倡导的一种重要的学习方式,它在教学中所彰显出的师生间的民主、激发出的学生间团队合作精神和个体责任意识极大地提升了课堂教学效率,有效地促进了学生综...

科学课随笔:光的反射和折射《调皮的光宝宝》这节课大大激发了幼儿的探索兴趣。孩子们用自己带来的小镜子在阳光下不停地晃动,想把光宝宝引进我们的教室里。当他们看到教室的屋顶上有光宝宝的时候,他们会...

儿童听力障碍——病因学和发病机制听力丧失可发生在任何年龄。约1/800-1/1000的新生儿在出生时有严重和极度的听力丧失,另有2-3倍于此的新生儿有程度略低的听力丧失,包括轻至中度的,双侧性或单侧性听力丧失。...

儿童多动症发病机制与治疗儿童注意力缺陷多动障碍(attention defect hyperactivity disorder,ADHD)简称多动症,主要表现为明显的注意定向障碍和注意持续时间短暂,活动过度,行为冲动伴有学习困难和品行障碍...

小儿多动症的病因及发病机制尽管科学技术日新月异,在实验室里人们都能看得到细胞的内容物了,就像看我们房间的布置,但是,对于许多疾病,其病因及发病机制还是不能十分肯定,本病亦属此列。根据现在的研究所得,我...

创设有效激励机制营造宽松工作环境回顾2006年度幼儿园的各项工作,我园最有成效的改革举措就是通过进一步深化内部管理体制改革,完善考核制度,搞活分配机制,创设有效的激励机制,为教师营造了宽松的工作环境,增强了教...

java中实现多态的机制是什么多态很简单,意思就是一个接口,多种方法;多态又分为静态和动态,方法重载属于静态,方法覆盖和继承属于动态,说不清楚,给段代码给你做参考,能不能看懂就看你自己的了,这种事别人帮不了你...

java中实现多态的机制.....看的好复杂。。。 方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性...

大神解释一下java反射有什么作用java的反射机制就是增加程序的灵活性,避免将程序写死到代码里, 例如: 实例化一个 person()对象, 不使用反射, new person(); 如果想变成 实例化 其他类, 那么必须修改源代码,并重新编...

推荐阅读
图文推荐