黑马程序员技术交流社区

标题: 关于继承有个地方有点晕,求帮忙解释下 [打印本页]

作者: Asdstkwq    时间: 2016-3-26 15:53
标题: 关于继承有个地方有点晕,求帮忙解释下
public static void main(String[] args) {
                Student stu = new Student();
                stu.show();
        }
class People{
String name;
public int age = 30
public void show(){
System.out.println(age);
}

}
class Student extends People{
        public int age = 20;
}



运行结果是30,也就是父类的属性,为什么调用的不是重写的子类的属性
我试了必须子类也重写show方法,才能调用子类的属性
晕了。。。。。。

作者: lgdbest    时间: 2016-3-26 17:23
是30  有什么问题啊
作者: zhoubinjian    时间: 2016-3-26 18:01
子类没有函数,都重写不了,当然是输出父类啦
作者: Asdstkwq    时间: 2016-3-26 18:49
lgdbest 发表于 2016-3-26 17:23
是30  有什么问题啊

show方法不是已经被子类继承了吗,为什么方法里调用的不是子类自己的age
作者: lgdbest    时间: 2016-3-26 19:06
Asdstkwq 发表于 2016-3-26 18:49
show方法不是已经被子类继承了吗,为什么方法里调用的不是子类自己的age

show没有被重写啊,里边什么方法都没有, 你怎么继承啊
作者: Banana_uSuOO    时间: 2016-3-26 21:08
子类没有重写show方法,自然调父类的,父类就近是30
作者: lidandan    时间: 2016-3-26 21:30
子类没有重写父类的方法,你上面虽然创建对象了,但是你调用的是父类的show()方法,所以当然是输出30,这有什么可晕的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2