问答详情
源自:10-1 Java 中的多态

不太理解Animal obj2=new Dog()?

父类引用指向子类对象,这个obj2到底是父类的对象还是子类的对象呀?使用子类的构造方法创建对象为什么不可以引用子类独有的方法呢?

提问者:奶尤糯米团子 2020-02-09 19:06

个回答

  • qq_慕先生5365347
    2020-02-10 17:05:13
    已采纳

    父类的哦,我大概懂你的意思,用子类引用也是可以的,一般来说有继承关系的话,使用父类引用子类对象会更好的展示多态性

  • 慕虎2096416
    2020-04-29 21:50:54

    这个是obj2是引用父类给子类创建的对象。打个比方,儿子继承父的财产和儿子打拼的财产是不同的,在法院判决的时候是不会把儿子打拼的财产跟继承的财产一起收税的。如果你创建一个子类独有的对象就可以调用这个独有的方法。

  • blowwind
    2020-04-14 18:35:16

    如果你在很多地方使用了这个子类对象,比如狗这个对象,但是后来你想把狗的对象换成猫的对象,如果直接使用子类引用的话,所有的狗对象的引用都需要改变,工作量巨大,如果使用的是父类的引用,你只需要修改父类的引用对象就行,而不用替换其他地方。