Оценить код с точки зрения принципов ООП и корректность в целом - C#
Формулировка задачи:
Извиняюсь заранее, если не в ту тему не с той просьбой. Прошу посмотреть код, оценить его с точки зрения принципов ооп да и правильность в целом. Имею желание перестать говнокодить, вот первая попытка.
Описание: имеем абстрактный класс Animal, с 3 защищенными полями и 2 виртуальными методами. От этого класса наследуются 3 класса потомка, в которых описан конструктор и переопределен метод ShowInfo(). В главном методе Main() создаем экземпляры классов с параметрами и вызываем методы базового и производных классов.
Animal.cs
Main.cs
Cat.cs(аналогично созданы классы dog и fox)
using System; abstract class Animal { protected string _tip; protected string _name; protected int _ves; public virtual void ShowInfo() { Console.WriteLine("Меня зовут {0}, я {1} и мой вес {2} кг.", _name, _tip, _ves); } public virtual void Sound(){} }
using System; class Program { static void Main() { Cat cat = new Cat("Вася", 11); Dog dog1 = new Dog("Бобик", 16); Dog dog2 = new Dog("Бобище", 27); Fox fox = new Fox("Патрикеевна", 16); cat.ShowInfo(); cat.Sound(); dog1.ShowInfo(); dog1.Sound(); dog2.ShowInfo(); dog2.Sound(); fox.ShowInfo(); fox.Sound(); Console.ReadKey(); } }
using System; class Cat:Animal { public Cat(string name, int ves) { _tip = "кот"; _name = Name; _ves = Ves; } public override void Sound() { Console.WriteLine("Я говорю мяу"); } }
Решение задачи: «Оценить код с точки зрения принципов ООП и корректность в целом»
textual
Листинг программы
var animals = new Animal[] { new Cat("Вася", 11), new Dog("Бобик", 16), new Dog("Бобище", 27), new Fox("Патрикеевна", 16) }; foreach (var animal in animals) { animal.ShowInfo(); animal.Sound(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д