温馨提示×

forname动态加载类的方法是什么

小樊
84
2024-09-03 00:08:35
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

Class.forName() 是 Java 中用于动态加载类的一种方法。它允许你在运行时加载和实例化一个类,而不需要在编译时知道这个类的名称。这对于插件系统、框架和库等场景非常有用,因为它们可以在运行时动态地加载和使用其他类。

Class.forName() 方法的签名如下:

public static Class<?> forName(String className) throws ClassNotFoundException

参数:

  • className:要加载的类的完全限定名(包括包名)。

返回值:

  • 返回一个表示加载的类的 Class 对象。

异常:

  • 如果找不到指定的类,将抛出 ClassNotFoundException

使用示例:

try {
    Class<?> clazz = Class.forName("com.example.MyClass");
    Object instance = clazz.getDeclaredConstructor().newInstance();
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
    e.printStackTrace();
}

在这个示例中,我们使用 Class.forName() 动态加载名为 com.example.MyClass 的类,然后创建一个新的实例。注意,这里我们使用了反射来调用类的默认构造函数。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:forname还有哪些动态加载类的方法

0