overriding abstract methods in an inherited abstract class

此生再无相见时 提交于 2019-12-04 03:12:29
Mike Parkhill

You don't need to declare execute() in the Binary class since it's already inherited from Command. Abstract methods don't need to be implemented by other abstract classes - the requirement is passed on to the eventual concrete classes.

public abstract class Command
{
    public abstract object execute();
}

public abstract class Binary : Command
{
    //the execute object is inherited from the command class.
}

public class Multiply : Binary
{
    public override object execute()
    {
        //do stuff
    }
}

Just omit the declaration of execute() in Binary at all. Since Binary is abstract as well, you don't have to implement any abstract methods of its ancestors.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!