Java继承中初始化顺序2

/*

看程序写结果

提示:一个类的初始化过程

成员变量进行初始化

默认初始化

显示初始化

构造方法初始化

*/

class Fu{

public int num = 10;

public Fu(){

System.out.println("fu");

}

}

class Zi extends Fu{

public int num = 20;

public Zi(){

System.out.println("zi");

}

public void show(){

int num = 30;

System.out.println(num); //30

System.out.println(this.num); //20

System.out.println(super.num); //10

}

}

class ExtendsTest {

public static void main(String[] args) {

Zi z = new Zi();

z.show();

}

}

结果:

fu

zi

30

20

10

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