在 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

更新于:2020-6-25

2K+ 浏览量

开启你的 职业生涯

完成该课程,获得认证

开始
广告