创建接口,抽象类和类的层次结构

时间:2020-03-26 16:29:49

标签: c# asp.net .net inheritance interface

我从书中获得了这项任务,我想创建接口,抽象类和程序类的层次结构

处理动物鸟。
所有动物都有一个名字-Name,并且可以通过-Act方法起作用;动物可以做到这一点。
所有鸟都有一个名字-Name,并且可以通过-Fly方法飞行;一只鸟就能做到。
所有的鸟都是动物。
海鸥是可以通过Squawk方法爬行的鸟,并被命名为 海鸥
Singbird是可以通过Tweet方法尖叫的鸟,其名称为 鸣禽
所有鸟类都通过飞行Fly()并通过squeak()方法实现Act();所有鸟儿
这种行为方式的一部分。
所有鸟类都以相同的方式实现Fly()

我开始将Animals创建为接口,但是那种实现该接口的Bird不能使它成为Name abstract,而Name Abstract被要求(或强迫任何鸟的名字加上相应的名称)鸟,但是在将继承的属性和方法强制到相应的鸟上时遇到问题。有什么建议吗?

interface IAnimal
{
    void Acting();
    abstract public string Name { get; set; }

}


abstract class Bird : IAnimal
{
    abstract public void Fly();
    override public string Name { get; set; }

}

class Seagull : Bird
{

    public override void Fly()
    {
        Act();
        Squak();
    }
    public void Squak()
    {

    }
}

0 个答案:

没有答案