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

关于类爷子孙三代的问题 ( : (我是突然发现的问题)

请看下面的图片,我分别创建了Vehicle,Auto,Auto2类,其中Auto继承Vehicle类,Auto2j继承Auto类,我在Main入口类分别创建了obj,obj2,obj3,问题来了:请看倒数第一张和第二张,Auto obj3 = new Auto2(),这样写没问题,因为我让Auto2继承Auto类,用obj3调用fun方法也没问题,但是我为什么可以把这条对象写成Aehicle obj3 = new Auto2()。为什么可以用Aegicle引用Auto2对象,Auto2没继承Aehicle啊?

http://img1.sycdn.imooc.com//59a1a6c700010d8004540289.jpg

http://img1.sycdn.imooc.com//59a1a6c7000168f404430309.jpg

http://img1.sycdn.imooc.com//59a1a7cf0001fee004570306.jpg


http://img1.sycdn.imooc.com//59a1a6c8000167ae04820711.jpg

http://img1.sycdn.imooc.com//59a1a6c80001b9bf04790696.jpg


正在回答

2 回答

建议你看看方法的重写那一章,方法重写之后,对子类的方法 具有优先作用。不是不继承.

0 回复 有任何疑惑可以回复我~

爷孙关系也是父子关系吧,或者说孙子也继承爷爷,没毛病

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530714    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

关于类爷子孙三代的问题 ( : (我是突然发现的问题)

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信