class.forname怎么用
时间: 2024-06-11 11:08:37 浏览: 107
`Class.forName()` 是 Java 中的反射机制。它用于获取指定类名的 Class 对象。可以通过以下步骤使用 `Class.forName()`:
1. 导入 java.lang.Class 类。
2. 使用 `Class.forName()` 方法获取指定类名的 Class 对象。例如,以下代码将获取名为 `MyClass` 的类的 Class 对象:
```java
Class<?> myClass = Class.forName("MyClass");
```
注意,如果指定的类名在类路径上不可用,`Class.forName()` 方法将抛出 `ClassNotFoundException` 异常。
3. 可以使用获取的 Class 对象进行反射操作,例如创建新实例、访问字段和方法等。
```java
// 创建新实例
Object myObj = myClass.newInstance();
// 获取字段名为 myField 的字段值
Field myField = myClass.getDeclaredField("myField");
myField.setAccessible(true);
Object fieldValue = myField.get(myObj);
// 调用名为 myMethod 的方法
Method myMethod = myClass.getDeclaredMethod("myMethod");
myMethod.invoke(myObj);
```
注意,使用反射操作需要处理可能抛出的异常,例如 `NoSuchFieldException`、`IllegalAccessException` 和 `InvocationTargetException` 等。
阅读全文