java类的执行顺序

Posted beibidewomen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java类的执行顺序相关的知识,希望对你有一定的参考价值。

1. static静态代码块

2.{}

3.构造方法

 

4. 子类main方法运行时:

  • static静态代码块

5.子类构造方法调用时:

  • static静态代码块
  • {}
  • 构造方法

6.子类new两次对象

父类:

  

package com.xuzhiwen.protect;

public class FatherTest {
    static{
        System.out.println("FatherTest ....static");
    }
    
    public FatherTest(){
        System.out.println("FatherTest()...");
    }
    
    {
        System.out.println("{}");
    }
}

子类:

package com.xuzhiwen.protect;

public class SonTest extends FatherTest{
    public static void main(String[] args) {
        SonTest test = new SonTest();
        SonTest test1 = new SonTest();
    }
}

7.运行结果如下:

 

以上是关于java类的执行顺序的主要内容,如果未能解决你的问题,请参考以下文章

java类的执行顺序

Java 类的构造器静态代码块静态方法执行顺序

java父子类的初始化顺序--个人总结

Java代码执行顺序及多态体现

Java类的静态成员静态代码块普通成员普通代码块构造方法初始化执行的顺序

java类的加载顺序,静态块 非静态块 构造器属性方法等