Class动态加载 JDk加载类的时候不是同时一起加载的,而是遇到一个类的时候才进行加载 static 的语句块只在加载类的时候执行一次 使用-verbose:class 参数可以看到JDK加载类的详细过程 public class TestDynamicLoading { /** * @param args */ public static void main(String[] args) { new A(); System.out.println("----------------------"); new B(); new C(); new C(); new D(); new D(); } } class A { } class B { } class C { public C() { System.out.println("constructor"); } static { System.out.println("cccccccccccccccccccccccccc"); } } class D { { System.out.println("dddddddddddddddddddddddddddddddd"); } }