什么是java反射?java反射机制详解

你知道什么是java反射机制吗?在java当中很多的人对于java反射机制都不大了解,下面就让我们一起通过下文来详细的了解一下吧!

一、什么是java反射机制?

java反射机制其实指的就是在程序的运行状态当中,能够构造任意一个类的对象,能够了解任意一个对象所属的类,能够了解任意一个类的成员变量还有方法,能够调用任意一个对象的属性还有方法,以上这样的动态获取程序信息以及动态调用对象的功能就被叫做是java语言的反射机制,注意,反射被看作是动态语言的关键。

反射的这个概念最初是由编程开发人员Smith在1982年的时候提出来的,主要指的就是应用程序的访问、检测、修改自身的状态和行为的能力。

反射这个概念的提出,立马就在编程界获得了极大的关注。

随后就是各种各样的研究工作的开展,之后就带起了一场编程革命,多种支持反射机制的面向对象语言也是随之出现。

在计算机科学的领域当中,反射指的是一种能够自我描述以及自我控制的应用,在java编程语言当中,反射则是一种非常强大有利的工具。

它是一种面向抽象编程的一种实现方式,它可以使得代码语句更加的灵活,可以极大的提升代码运行的时候的装配能力。

延伸阅读:

二、java反射机制的特点有哪些?

了解完什么是java反射机制之后,下面再来一起了解一下java反射机制的特点都有哪些吧!

1、优点

java反射机制带来了极大的方便性和灵活性。

2、缺点

反射机制的功能虽然说是很强大的,但是并不可以滥用,能不使用就尽量不要使用。

那么这又是为什么呢?主要有以下几点的原因:

(1)程序健壮性

一般反射允许代码执行一些不被允许的操作,所以说使用反射所带来的后果是我们都很难料想到的。

具体的来说,反射代码将Java程序结构的抽象性进行了破坏,所以,在程序运行的平台发生了改变的时候,因为抽象的逻辑结构不能被识别,所以会导致,代码产生的效果会和之前的效果有所差异。

(2)性能

java反射机制当中含有一些动态类型,java虚拟机不能够对这些动态代码进行优化,所以,反射操作的效率比正常的操作效率要低。

(3)安全限制

反射一般都需要程序的运行没有安全方面的限制。

关于java反射机制你都了解了吗?更多java反射机制常见问题,请继续关注奇Q工具网来进行了解吧。

推荐阅读:

java反射原理是什么?java反射机制原理详解