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

来源:10-1 Java 中的多态

慕斯卡1730669

2017-08-27 01:08

请看下面的图片,我分别创建了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://img.mukewang.com/59a1a6c700010d8004540289.jpg

http://img.mukewang.com/59a1a6c7000168f404430309.jpg

http://img.mukewang.com/59a1a7cf0001fee004570306.jpg


http://img.mukewang.com/59a1a6c8000167ae04820711.jpg

http://img.mukewang.com/59a1a6c80001b9bf04790696.jpg


写回答 关注

2回答

  • qq_星河k_0
    2017-08-27 20:39:54

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

  • Star_scream
    2017-08-27 13:31:35

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

Java入门第二季 升级版

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

531022 学习 · 6151 问题

查看课程

相似问题