——了解JAVA的反射机制
什么是JAVA的反射机制(定义):
JAVA反射机制是在运行状态中,对于任意一个实体类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。通俗来讲反射机制是 Java 的动态性之一的动态语言:在程序运行时,可以改变程序的结构或变量类型
主要功能:
1.动态的加载类、动态的获取类的信息
2.动态构造对象
3.动态调用类和对象的任意方法
4.动态调用和处理属性
5.获取泛型信息
缺点:
1.性能问题 :
Java反射机制中包含了一些动态类型,所以Java虚拟机不能够对这些动态代码进行优化。因此,反射操作的效率要比正常操作效率低很多
2.安全限制
使用反射通常需要程序的运行没有安全方面的限制
3.程序健壮性
反射允许代码执行一些通常不被允许的操作,所以使用反射有可能会导致意想不到的后果。反射代码破坏了Java程序结构的抽象性,所以当程序运行的平台发生变化的时候,由于抽象的逻辑结构不能被识别,代码产生的效果与之前会产生差异。