在Java中,Class.forName()方法可以用于动态加载类。它的使用方式如下:
import java.lang.Class;
Class.forName(String className):根据类的全限定名加载类。
Class.forName(String className, boolean initialize, ClassLoader loader):根据类的全限定名、是否初始化和类加载器加载类。
// 加载类
Class clazz = Class.forName("com.example.MyClass");
// 加载类并初始化
Class clazz = Class.forName("com.example.MyClass", true, ClassLoader.getSystemClassLoader());
// 创建对象
MyClass obj = (MyClass) clazz.newInstance();
// 获取类的信息
String className = clazz.getName();
需要注意的是,Class.forName()方法会触发类的静态初始化,即执行静态代码块。如果不需要初始化类,可以使用Class.forName(className, false, loader)来加载类。