#Java基础# 加载器Class.forName()和ClassLoader.loadClass()的差别

54 阅读1分钟

是否初始化

  1. Class.forName()方法除了将类加载到Java虚拟机中外,还将该类的静态代码块执行一次,即会触发该类的初始化过程。 该方法还可以指定一个类加载器进行类加载,如果不指定类加载器,系统将默认使用当前线程的类加载器进行加载。

    Class.forName("com.example.MyClass");

  2. ClassLoader.loadClass()方法只是将类加载到Java虚拟机中,不会触发类的初始化过程。