在多个子类继承的情况下,初始化的顺序如下: 1. 静态变量静态代码块按照在类中出现的先后顺序进行初始化,注意静态变量要在静态代码块之前初始化。 2. 静态代码块按照在类中出现的先后顺序进行初始化。 3. 构造方法在最后执行。 举个例子: ``` class A { static int x = 10; // 静态变量 static { // 静态代码块 System.out.println("静态代码块 A"); } { // 静态代码块 System.out.println("静态代码块 A"); } A() { // 构造方法 System.out.println("构造方法 A"); } } class B extends A { static int y = 20; // 静态变量 static { // 静态代码块 System.out.println("静态代码块 B"); } { // 静态代码块 System.out.println("静态代码块 B"); } B() { // 构造方法 System.out.println("构造方法 B"); } } class C extends B { static int z = 30; // 静态变量 static { // 静态代码块 System.out.println("静态代码块 C"); } { // 静态代码块 System.out.println("静态代码块 C"); } C() { // 构造方法 System.out.println("构造方法 C"); } } public class Main { public static void main(String[] args) { C c = new C(); // 创建 C 类的对象 } } ``` 输出