Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 11.06.2020
Сообщений: 26

Написать четыре класса: Fish (Рыбы), Animal (Животные), Ape (Обезьяны), Human (Человек)

09.10.2020, 21:14. Показов 1910. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Написать четыре класса: Fish (Рыбы), Animal (Животные), Ape (Обезьяны), Human (Человек). Унаследовать животных от рыб, обезьян от животных и человека от обезьян. Поля и методы разработать самостоятельно.
Я понимаю, что можно сделать через наследование, но как мне сказали через полиморфизм было бы красивее. Я сделала, но мне сказали, что лучше сделать классы приватными, чтобы они наследовались какие нужны по смыслу. Я не поняла как. Заранее спасибо.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
class Programm
{
    static void Main()
        {
            Fish fish = new Fish();
            Animal animal = new Animal();
            Ape ape = new Ape();
            Human human = new Human();
            fish.DescriptionAttribute();
            animal.DescriptionAttribute();
            ape.DescriptionAttribute();
            human.DescriptionAttribute();
 
            Console.ReadKey();
         }
}
 
class Fish
    {
        public virtual void DescriptionAttribute()
        {
            Console.WriteLine("Рыба - жабры, наличие плаников, чешуя, хладнокровие, обтекаемое тело, плавает, есть позвоночник, хвост\n");
        }
    }
    class Animal : Fish
    {
        public override void DescriptionAttribute()
        {
            Console.WriteLine("Животное - есть мех, позвоночник, хвост, живорождение, кормление молоком\n");
        }
    }
    class Ape : Animal
    {
        public override void DescriptionAttribute()
        {
            Console.WriteLine("ОБезьяна - есть мех, позвоночник, живорождение, кормление молоком, пальцы\n");
        }
    }
    class Human : Ape
    {
        public override void DescriptionAttribute()
        {
            Console.WriteLine("Человек - есть позвоночник, живорождение, кормление молоком, пальцы, умеет плавать\n");
        }
    }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.10.2020, 21:14
Ответы с готовыми решениями:

Написать код программы для реализации класса human
Написать код программы для реализации класса human с атрибутами класса имя и возраст и методами задания имени и возраста и вывода...

Написать сигнатуры индексатора класса коллекции объектов, относящихся к абстрактному классу Animal
1. сигнатура индексатора класса коллекции объектов, относящихся к абстрактному классу Animal 2. сигнатуру автореализованого свойства...

Какова вероятность того, что человек поймает две рыбы разного вида
в пруду 800 осетров и 500 окуней. какая вероятность того что человек поймает две разных вида рыб?

6
628 / 392 / 135
Регистрация: 06.03.2017
Сообщений: 1,469
09.10.2020, 21:28
Anna_1, а вы точно понимаете всю эту цепочку наследований?
0
0 / 0 / 0
Регистрация: 11.06.2020
Сообщений: 26
09.10.2020, 21:34  [ТС]
Не совсем, я никак не могла, сделать чтобы один наследовал у другого по цепочке.
0
0 / 0 / 0
Регистрация: 11.06.2020
Сообщений: 26
09.10.2020, 21:57  [ТС]
Pilarentes, И что это значит?
0
628 / 392 / 135
Регистрация: 06.03.2017
Сообщений: 1,469
09.10.2020, 22:00
Anna_1,
Цитата Сообщение от Anna_1 Посмотреть сообщение
лучше сделать классы приватными, чтобы они наследовались какие нужны по смыслу
честно говоря мне вот это непонятно. Бессмыслица какая-то. Можете написать ваши хотелки более четко?
0
0 / 0 / 0
Регистрация: 11.06.2020
Сообщений: 26
09.10.2020, 22:03  [ТС]
Pilarentes, написать четыре класса: Fish (Рыбы), Animal (Животные), Ape (Обезьяны), Human (Человек). Унаследовать животных от рыб, обезьян от животных и человека от обезьян. Методы, которые будут описывать класс, сделать приватными, для того чтобы какие нужны допустим животному, а это позвоночник, наследовались, а жабры нет.
0
Добрый пёс
 Аватар для Blasphemie
120 / 86 / 37
Регистрация: 13.09.2020
Сообщений: 254
09.10.2020, 22:32
В последнем классе, которому нужно определенное свойство или метод, его надо ограничить ключевым словом sealed.
В классе Fish оно есть, Animals его наследует, а обезьяна уже нет. Вот в Animals его и надо ограничить, тогда оно дальше не пойдет.

Добавлено через 8 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
class Programm
{
    static void Main()
        {
            Fish fish = new Fish();
            Animal animal = new Animal();
            Ape ape = new Ape();
            Human human = new Human();
            fish.DescriptionAttribute();
            animal.DescriptionAttribute();
            ape.DescriptionAttribute();
            human.DescriptionAttribute();
 
            Console.ReadKey();
         }
}
 
class Fish
    {
        public virtual void DescriptionAttribute()
        {
            Console.WriteLine("Рыба - жабры, наличие плаников, чешуя, хладнокровие, обтекаемое тело, плавает, есть позвоночник, хвост\n");
        }
        public virtual string Branchiae() 
        {
          // что-то связанное с жабрами
          return "frfrfrfr";
        }
    }
    class Animal : Fish
    {
        public override void DescriptionAttribute()
        {
            Console.WriteLine("Животное - есть мех, позвоночник, хвост, живорождение, кормление молоком\n");
        }
        public override sealed string Branchiae() 
        {
          // что-то связанное с жабрами
          return "blblblblbl";
        }
    }
    class Ape : Animal //а здесь метод Branchiae уже недоступен. И дальше его не будет.
    {
        public override void DescriptionAttribute()
        {
            Console.WriteLine("ОБезьяна - есть мех, позвоночник, живорождение, кормление молоком, пальцы\n");
        }
    }
    class Human : Ape
    {
        public override void DescriptionAttribute()
        {
            Console.WriteLine("Человек - есть позвоночник, живорождение, кормление молоком, пальцы, умеет плавать\n");
        }
    }
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.10.2020, 22:32
Помогаю со студенческими работами здесь

Разработайте два класса потомка от Animal
Разработайте два класса потомка от Animal, которые будут отображать особенности двух пород собак. Разработайте методы для этих классов,...

Разработать два класса потомка от Animal.
Разработайте два класса потомка от Animal, которые будут отображать особенности двух пород собак. Разработайте методы для этих ...

Исправить ошибку при использовании класса Animal
Я только начал учить. Почему то ошибку выдает, объясните почему class Animal { string kindOfAnimal; string name; int...

Не могу вывести значения строк/переменных из класса human
Здравствуйте, дорогие форумчане. Я работаю над кодом класса human, но дошел до момента, когда просто не могу вывести строки/переменные....

Волк и Лиса раздобыли кучу рыбы. Кто получил больше рыбы и на сколько больше?
Добавлено через 21 час 43 минуты up, помогите ребят задача легкая. Обманным путем лиса и волк раздобыли целую кучу рыбы. Лиса и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru