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

JAVA中为什么通过父类成子类的对象进行调用子类的方法然后打印出来

JAVA中为什么通过父类成子类的对象进行调用子类的方法然后打印出来

慕粉15522702521 2016-07-26 20:11:36
各位前辈,我想问一下第四张图里面,两个问号所在的代码都可以打印出相同的结果,第一个通过父类生成子类的对象进行调用子类的方法然后打印出来与第二种直接用子类生成子类的对象在调用子类里面的方法进行打印之间有什么不同的地方,我看视频里面老师讲解就是第一种,说是向上转型,我想知道就是既然都能够打印出相同的结果为什么要用第一个问好里的代码而不用第二种容易理解的代码?还有第一种是用继承定义接口吗?第一种的代码方式出来这种用法还有别的什么用处吗,谢谢!!!
查看完整描述

3 回答

已采纳
?
丶包菜

TA贡献158条经验 获得超233个赞

假设我公司有台万能电话,能当座机又能当手机用,客户想用座机,给他万能电话座机的那个功能,客户想要用手机,同样也只需给他这只万能电话。 反正只要给他一台万能机,就能 new出座机  也能 new出手机。

万能机 万能=null;

第一次: 万能=new 座机

第二次: 万能=new 手机

第二种方案,客户要座机,给他 new座机,客户要手机,给他 new手机。

第一次: 座机 座机=new 座机

第二次: 手机 手机=new 手机

结果虽然一样,但效率和成本就不一样。

所以呢,第一种方案效率更好,他能满足许多的需求,只需调用它的娃娃们。

查看完整回答
3 反对 回复 2016-07-26
  • 大咪
    大咪
    很好理解的例子。。。说得对呀
?
望远

TA贡献1017条经验 获得超1032个赞

这里只是为了说明java中的一种多态效果,可以通过继承的方式使得父类引用指向子类对象(例如工人一定是人,这就是向上类型转换),并且通过父类引用调用子类父类中均有的方法,使得代码更具有灵活性。

查看完整回答
2 反对 回复 2016-07-27
  • 3 回答
  • 0 关注
  • 2873 浏览

添加回答

举报

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