создать иерархию интерфейсов, абстрактных классов и классов - PullRequest
0 голосов
/ 26 марта 2020

Я получил это задание из своей книги, я хочу создать иерархию интерфейсов, абстрактных классов и классов для программы

Это обрабатывает птиц, которые являются животными.
Все животные имеют имя -Название и может действовать по методу -Act; животные могут сделать это.
Все птицы имеют имя-Имя и могут летать методом -Fly; птица может сделать это.
Все птицы - животные.
Чайка - это птица, которая может кричать методом Squawk и называется Чайка
Птица - это птица, которая может пискать методом Tweet и имеет имя Songbird
Все птицы реализуют Act (), используя Fly () и метод squeak (); все птицы
части этого способа действия.
Все птицы реализуют свои Fly () одинаково

Я начал создавать Animals как интерфейс, но именно так Bird, который реализует этот интерфейс не могу сделать его Имя абстрактным, которое требуется (или заставить что-либо, что является птицей, иметь имя) с соответствующими птицами, но у меня возникают проблемы с навязыванием унаследованных свойств и методов соответствующим птицам. Есть предложения?

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()
    {

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...