理解ClassLoader工作机制

package com.ioc;

public class Test {


  public static void main(String[] args) throws ClassNotFoundException {
    System.out.println(Test.class.getClassLoader());
    System.out.println(ClassLoader.getSystemClassLoader());
    System.out.println(ClassLoader.getSystemClassLoader());
    System.out.println(Thread.currentThread().getContextClassLoader());
    //System.out.println(Test.class.getClassLoader().loadClass("com.ioc.Test2"));//没有初始化
    //System.out.println(Class.forName("com.ioc.Test2"));//开始初始化
    System.out.println(Class.forName("com.ioc.Test2", false, ClassLoader.getSystemClassLoader()));//没有初始化
  }
}
package com.ioc;

public class Test2 {

  static{
    System.out.println("开始初始化");

  }

}

 

深入理解ClassLoader工作机制(jdk1.8)

https://blog.csdn.net/u014634338/article/details/81434327

五分钟看懂ClassLoader

https://www.jianshu.com/p/554c138ca0f5


JVM类加载的过程(加载、验证、准备、解析、初始化)

https://blog.csdn.net/sunroyfcb/article/details/81591784

 

类加载的过程(加载、验证、准备、解析、初始化)

https://blog.csdn.net/dufufd/article/details/80538527

posted @ 2019-10-28 15:49  tonggc1668  阅读(112)  评论(0编辑  收藏  举报