Java继承中的初始化顺序

public class Fu {

static {

System.out.println("静态代码块Fu");

    }

{

System.out.println("构造代码块Fu");

    }

public Fu() {

System.out.println("构造方法Fu");

    }

}

class Ziextends Fu{

static {

System.out.println("静态代码块Zi");

    }

{

System.out.println("构造代码块Zi");

    }

public Zi() {

System.out.println("构造方法Zi");

    }

}

class Demo {

public static void main(String[] args) {

Zi zi =new Zi();

    }

}

初始化顺序结果:

静态代码块Fu

静态代码块Zi

构造代码块Fu

构造方法Fu

构造代码块Zi

构造方法Zi

你可能感兴趣的:(Java继承中的初始化顺序)