Java 的反射机制
2025-05-11
Java 的反射机制
Java 的反射机制(Reflection)是 Java 语言的一项强大功能,它允许程序在运行时(Runtime)动态地获取类的信息,并操作类的属性、方法和构造函数。反射使得程序能够在运行时检查类、接口、字段和方法的信息,并能够动态地调用这些成员。
反射的核心功能
获取类的信息:
可以在运行时获取类的名称、父类、实现的接口、修饰符等信息。
创建对象:
可以在运行时通过类的全限定名(Fully Qualified 建类的实例,即使该类在编译时未知。
访问和修改字段:
可以获取和设置类的字段(成员变量),包括私有字段。
调用方法:
可以动态调用类的方法,包括私有方法。
操作构造函数:
可以获取类的构造函数,并使用它们来创建对象。
反射的核心类
Java 反射机制主要依赖于以下几个类,它们位于 java.lang.reflect 包中:
Class:表示类的运行时信息,是反射的入口点。
Field:表示类的字段(成员变量)。
Method:表示类的方法。
Constructor:表示类的构造函数。
反射的基本用法示例
以下是一个简单的示例,展示如何使用反射来获取类的信息、创建对象、访问字段和调用方法。
java
import java.lang.reflect.Constructor;
import java.lang.reflect.Field