Files
NoteBook/JVM/9. 创建对象.md
2025-09-28 20:34:55 +08:00

959 B

创建对象

初始化顺序

  1. 父类静态变量/静态代码块
  2. 子类静态变量/静态代码块
  3. 父类变量/代码块
  4. 父类构造方法
  5. 子类变量/代码块
  6. 子类构造方法
class Parent {
    // 父类静态变量
    static {
        System.out.println("1. 父类静态代码块");
    }

    // 父类实例变量
    {
        System.out.println("3. 父类实例代码块");
    }

    // 父类构造方法
    Parent() {
        System.out.println("4. 父类构造方法");
    }
}

class Child extends Parent {
    // 子类静态变量
    static {
        System.out.println("2. 子类静态代码块");
    }

    // 子类实例变量
    {
        System.out.println("5. 子类实例代码块");
    }

    // 子类构造方法
    Child() {
        System.out.println("6. 子类构造方法");
    }
}

public class Main {
    public static void main(String[] args) {
        new Child();
    }
}