本文主要是介绍Java反射,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
反射-Reflection
反射概念
- 对任意一个类,都能够知道这个类的所有属性和方法
- 对任意一个对象,都能调用这个对象的所有属性和方法
反射的作用
- 检查类的属性和方法
- 在运行时检查对象的类型
- 动态构造某个类的对象
- 可以任意调用对象的方法
反射的使用
1. java.lang.reflect 包中的三个类
- Field:成员变量
- Method:成员方法
- Constructor:构造方法
2. 对 public 域的方法
- getField
- getMethod
- getConstructor
3. 对其他域的方法
包括 private 和 protected 的成员,但不包括父类成员。
- getDeclaredField
- getDeclaredMethod
- getDeclaredConstructor
利用反射访问私有属性:使用 setAccessible(true)
反射的不足
性能是一个问题。反射相当于一系列解释操作,通知 Java 虚拟机要做什么,性能比直接的 Java 要慢很多。
这篇关于Java反射的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!