Создать абстрактный класс Worker с полями, задающими фамилию работника - C#
Формулировка задачи:
Создать абстрактный класс Worker с полями, задающими фамилию работника, фамилию руководителя, фамилии подчинённых, и виртуальными методами вывода списка обязанностей и списка подчинённых на экран. На его основе реализовать классы Manager, Developer и Coder. Создать класс Group, содержащий массив объектов этих классов в динамической памяти. Предусмотреть возможность вывода всех объектов списка и выборки по фамилии с выводами всего дерева подчинённых. Написать демонстрационную программу, в которой будут использоваться все методы классов.
Решение задачи: «Создать абстрактный класс Worker с полями, задающими фамилию работника»
textual
Листинг программы
- namespace ConsoleWorker
- {
- abstract class Worker
- {
- public string LastName;
- public Worker(string lastname)
- {
- LastName = lastname;
- }
- public abstract string Routine();
- public abstract string DependPerson();
- }
- class Manager : Worker
- {
- public Manager(string lastname):base(lastname)
- {
- }
- public override string Routine()
- {
- return String.Format(" Create firm");
- }
- public override string DependPerson()
- {
- return String.Format(" Works");
- }
- }
- class Developer : Worker
- {
- public Developer(string lastname)
- : base(lastname)
- {
- }
- public override string Routine()
- {
- return String.Format(" Create project");
- }
- public override string DependPerson()
- {
- return String.Format(" Works");
- }
- }
- class Coder: Worker
- {
- public Coder(string lastname)
- : base(lastname)
- {
- }
- public override string Routine()
- {
- return String.Format(" Create code");
- }
- public override string DependPerson()
- {
- return String.Format(" Works");
- }
- }
- class Program
- {
- static void Main(string[] args)
- {
- List<Worker> list = new List<Worker>();
- list.Add(new Manager("Vasil"));
- list.Add(new Developer("Ivan"));
- list.Add(new Coder("Test"));
- foreach (var l in list)
- {
- Console.WriteLine(l.LastName+ " "+ l.Routine()+" " +l.DependPerson());
- }
- string name = Console.ReadLine();
- foreach (var n in list){
- if (n.LastName == name)
- Console.WriteLine(n.LastName+ " " + n.Routine()+ " "+ n.DependPerson());
- }
- Console.ReadLine();
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д