代码块以及构造方法执行顺序

有关静态代码块,构造代码块,main函数,构造函数,静态方法的执行顺序

静态代码块是最先执行的,这里有可能会和静态方法联系起来,静态代码块和静态方法都会在类加载的时候,被加载,但是静态代码块会直接执行(且只执行一次,后面无论实例化多少对象,都只被执行一次),而静态方法不会被执行,静态方法要被调用才会执行
构造代码块和构造函数只有对象实例化的时候,才会执行且构造代码块在构造函数执行之前被执行。
执行顺序:静态代码块>main函数>(此处实例化对象)构造代码块>构造函数。

当子类继承父类时
父类静态代码块>子类静态代码块>(此处实例化子类对象)父类构造代码块>父类构造方法>子类构造代码块>子类构造方法

还有一个关键知识点:一个类可以在没初始化完成时,进行实例化!
可以思考一会,再去寻找答案!

以上个人理解,若有错误请评论指出。

你可能感兴趣的:(代码块以及构造方法执行顺序)