Java反射的几种方法
时间: 2023-02-09 14:52:25 浏览: 273
Java反射的两种使用方法(推荐)
Java反射机制提供了几种方法来操作对象的内部信息。这些方法包括:
1. 获取类的信息: 使用`Class.forName`方法获取类的信息。
2. 获取构造函数信息: 使用`Class.getConstructors`方法获取类的构造函数信息。
3. 获取方法信息: 使用`Class.getMethods`方法获取类的方法信息。
4. 获取域信息: 使用`Class.getFields`方法获取类的域信息。
5. 调用方法: 使用`Method.invoke`方法调用对象的方法。
6. 获取域值: 使用`Field.get`方法获取对象的域值。
7. 设置域值: 使用`Field.set`方法设置对象的域值。
例如,你可以使用以下代码获取类的信息并调用它的方法:
```java
// 获取类信息
Class cls = Class.forName("com.example.MyClass");
// 获取方法信息
Method method = cls.getMethod("myMethod", int.class, String.class);
// 创建对象
Object obj = cls.newInstance();
// 调用方法
method.invoke(obj, 123, "hello");
```
你也可以使用以下代码获取域信息并获取或设置域值:
```java
// 获取域信息
Field field = cls.getField("myField");
// 获取域值
Object value = field.get(obj);
// 设置域值
field.set(obj, "new value");
```
阅读全文