代码验证静态代码块被自动执行,就算产生了类的多个实例对象,但其中的静态代码块只被执行了一次。
class Parent{ static String name="hello"; { System.out.println("parent block"); } static { System.out.println("parent static block"); } public Parent(){ System.out.println("parent constructor"); } } class Child extends Parent{ static String childName="hello"; { System.out.println("child block"); } static { System.out.println("child static block"); } public Child(){ System.out.println("child constructor"); } } public class TextStatic{ public static void main(String[] args){ new Child(); new Child(); } }
运行结果: