class Demo {
public static void main(String[] args) {
Zi z= new Zi();
z.show();//子类的对象去调用的show,当前对象应该是子类对象啊,为什么输出的结果是父类的成员变量值?
}
}
class Fu {
public int a;
private String s;
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
public String getS() {
return s;
}
public void setS(String s) {
this.s = s;
}
public void show(){
System.out.println(this.a);
System.out.println(this.s);
}
}
class Zi extends Fu{
int a = 123;
String s = "niao";
}
若白衣卿相 发表于 2016-10-26 13:12
子类对象在内存中分为两个区域,分别标记为this和super,访问父类中成员默认都会加super.成员,在你这个sho ...
若白衣卿相 发表于 2016-10-26 13:12
子类对象在内存中分为两个区域,分别标记为this和super,访问父类中成员默认都会加super.成员,在你这个sho ...
zhangpanqin 发表于 2016-10-26 11:57
构造方法不能继承,你要在子类重写构造方法,对父类初始化
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |