交通工具多态问题

来源:-

qq_魅影劲_0

2016-11-15 13:20

582a9adf000196b203950223.jpg

582a9ae000012aa705000208.jpg

582a9ae00001aaa204200218.jpg

582a9ae100011f1305000262.jpg

我已经在子类中重写了父类的对象,然后在main函数中用父类引用了子类的对象,为什么输出的还是父类的对象?

写回答 关注

2回答

  • 宝慕林9955328
    2016-11-17 16:05:54
    已采纳

    你的obj1,2,3类型是Vehicle。

    qq_魅影劲...

    子类对象在构造方法中赋值就可以正常调用了

    2016-11-17 16:08:19

    共 1 条回复 >

  • 慕莱坞7248995
    2016-11-21 00:03:56

    你的obj1是用的多态的引用, 在多态的引用中, 对于变量来说,变量不能被重写。

    重写只针对方法来说的

    qq_魅影劲... 回复慕莱坞724...

    所以如果想用多态来调用重写子类的属性 必须在子类的构造方法里面对其进行赋值,这样在父类引用子类对象的时候拿到的就是重写后的属性.具体还得自己试试 不知道说得对不对

    2016-11-22 15:47:42

    共 4 条回复 >

Java入门第二季 升级版

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

530667 学习 · 6091 问题

查看课程

相似问题