Создать абстрактный класс 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();
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы