欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Class.forName()和ClassLoader 区别

程序员文章站 2023-12-25 12:46:33
...
Class.forName加载类时将类进了初始化,而ClassLoader的loadClass并没有对类进行初始化,只是把类加载到了虚拟机中。



package demo88;

public class Demo {
  
	
  
  public static int num = 2;
  static {
	  System.out.println(1);
	  System.out.println(num);
  }
   
  public static void method(){
	  System.out.println(3);
  }
   
}


package demo88;

public class Demo2 {

	   
	   public static void main(String[] args) {
		try {
			//ClassLoader.getSystemClassLoader().loadClass("demo88.Demo");//
			Class.forName("demo88.Demo"); //1  2
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

 

相关标签: 虚拟机 JVM

上一篇:

下一篇: