在 Java 中使用 forName() 方法加载类
可以使用 java.lang.Class.forName(String name, boolean initialize, ClassLoader loader) 方法返回与给定字符串名称的类关联的类对象,该方法使用用于加载类的类加载器。
forName() 方法的参数有 name、initialize 和 loader。如果参数 loader 的值为 null,则使用引导类加载器加载类。此外,如果 initialize 参数为 true,则仅在该类尚未初始化的情况下才对其进行初始化。
使用 forName() 方法加载类的程序如下所示 −
示例
import java.lang.*; public class Demo { public static void main(String[] args) { try { Class c1 = Class.forName("Demo"); ClassLoader classLoader = c1.getClassLoader(); Class c2 = Class.forName("java.lang.String", true, classLoader); System.out.println("Class = " + c1.getName()); System.out.println("Class = " + c2.getName()); } catch(ClassNotFoundException e) { System.out.println("Excepton: " + e.toString()); } } }
输出
Class = Demo Class = java.lang.String
广告