Java Polymorphism

前提是你 提交于 2019-11-29 09:50:34
class Horse extends Animal
{
    @Override
    void eat()
    {
        super.eat();
    }
}

No, you'll have to explicitly do so in the overridden method (i.e. super.eat()).

You cannot do this by doing any form of typecasting. Your only way to call the method of the superclass is to either wrap it like Brett Holt showed, or you must have an object whose most specific runtime type is Animal.

In Java - All the methods are virtual methods that is most recent implementation is used while calling the function.

To answer your question, please make the method static in Animal class then you will get the eat method of Animal class called.

static void eat(){ 
      System.out.println("Animal is eating..."); 
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!