java方法执行顺序验证
代码:
class Parent { public Parent() { System.out.println("4---父类构造方法"); } static { System.out.println("1---父类静态代码块"); } { System.out.println("3---父类普通代码块"); } } class Child extends Parent { public Child() { System.out.println("6---子类构造方法"); } static { System.out.println("2---子类静态代码块"); } { System.out.println("5---子类普通代码块"); } } public class Test { public static void main(String[] args) { new Child(); } }
执行结果:
代码:
public class Test { private static Test test1 = new Test("test1"); private static Test test2 = new Test("test2"); static { System.out.println("===静态代码块==="); } public Test(String name) { System.out.println("["+name+"]的构造函数@"+this.hashCode()); } { System.out.println("普通代码块@"+this.hashCode()); } public static void main(String[] args) { new Test("test"); } }
执行结果:
作者:[一柒微笑]