Java父类与子类静态代码块、构造代码块、构造方法的执行优先顺序
2019-01-09 17:16
387 查看
(1)如果只有一个类,执行顺序:
静态初始化代码块、构造代码块、构造方法
代码举例:
public class HelloB { public HelloB() { System.out.println("B构造方法"); } { System.out.println("B构造代码块"); } static { System.out.println("B static"); } public static void main(String[] args) { new HelloB(); } }
运行结果:
(2)如果有父类和子类,执行顺序:
1.父类静态初始化代码块、子类静态初始化代码块
2.父类构造代码块、父类构造方法
3.子类构造代码块、子类构造方法
代码举例:
public class HelloB extends HelloA { public HelloB() { System.out.println("B构造方法"); } { System.out.println("B构造代码块"); } static { System.out.println("B static"); } public static void main(String[] args) { new HelloB(); } } class HelloA { public HelloA() { System.out.println("A构造方法"); } { System.out.println("A构造代码块"); } static { System.out.println("A static"); } }
运行结果:
相关文章推荐
- Java继承中父类子类构造方法、静态代码块、非静态代码块的执行顺序
- java中父类的静态代码块,非静态代码块,构造方法,子类的静态代码块,构造方法等先后执行顺序
- JAVA父类子类静态代码块、静态变量、构造方法的执行顺序
- 【JAVA】探究JAVA父类子类静态代码块、静态变量、构造方法的执行顺序
- JAVA中静态代码块、构造方法、Super()父类与子类之间执行顺序
- 关于java中子类,父类中,静态代码块: staic{},动态代码块:{},构造方法,类属性,对象属性等执行顺序做个总结:
- java 静态代码块和构造方法执行优先顺序
- 父类子类静态代码块,构造方法的执行顺序
- 父类与子类的静态代码块、代码块、构造方法执行顺序
- java中 静态成员、实例成员、构造方法在子类和父类中的执行顺序
- java继承中父类和子类静态、非静态代码块,构造函数,静态方法的执行顺序
- 父类子类构造方法、静态代码块、非静态代码块的执行顺序
- Java子类继承父类,静态代码块、普通代码块、构造代码块的执行顺序
- Java中静态代码块,非静态代码块,以及父类与子类的构造方法的之间调用顺序
- Java静态代码块、构造代码块、构造方法的执行顺序
- Java中关于静态代码块,非静态代码块,构造方法,静态方法,一般方法执行顺序
- Java子父类间静态代码块、构造代码块、构造方法的执行顺序
- java中静态代码块与构造方法的执行顺序判断
- JAVA中的代码块、静态代码块、构造方法、main方法执行顺序
- java静态代码块、初始化块和构造方法的执行顺序