继承面试题1
看程序写结果,结果是?
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);
System.out.println(this.num);
System.out.println(super.num);
}
}
class ExtendsTest {
public static void main(String[] args) {
Zi z = new Zi();
z.show();
}
}
考察知识点:
1.子类所有构造方法执行前默认提前访问父类的空参构造方法
2.this和super的问题(this访问本类的成员super访问父类的成员)
3.成员变量的就近原则
结果:
fu
zi
30
20
10
|
|