为了账号安全,请及时绑定邮箱和手机立即绑定

JAVA关于继承的题目~

JAVA关于继承的题目~

九天哟 2016-09-09 17:04:18
class Base { public void method(){ System.out.print ("Base method"); } } class Child extends Base{  public void methodB(){ System.out.print ("Child methodB"); } } class Sample { public static void main(String[] args) { Base base= new Child(); base.methodB(); } } 请问这题哪里有错误,关于父类和子类的调用到底是怎么样的?求大神指教~
查看完整描述

2 回答

?
dky

TA贡献93条经验 获得超26个赞

超人有人类的所有功能,所有人类都可以像超人那样飞么? extends,很多人都把他称为继承,它本来的意思是拓展,拓展什么意思 ,就是拓展了一些新增加的功能。举个例子,有个叫杰克的超人,在人群中只有我知道,看上去,杰克就是个普通人。然后,我说,杰克你是超人,你飞起来。假设杰克很听话,然后脱去外衣露出s标志(强制转换), (Child)base.methodB();那杰克飞的起来么。没错,他是超人,他可以飞。那另外一个普通人,我叫他飞,他也试图飞,但是他飞不起来,所以报错。

查看完整回答
反对 回复 2016-09-10
?
柠烟夏季

TA贡献15条经验 获得超14个赞

父类的引用虽然实际指向的是子类对象 , 但是通过父类引用是无法去调用子类自己的方法 的

base.methodB(); 这句肯定会报错

可以通过向下转型来实现对子类方法的调用

查看完整回答
反对 回复 2016-09-09
  • 2 回答
  • 1 关注
  • 1571 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信