Esempio n. 1
0
 static void Main(string[] args)
 {
     IWorker[] workers = new IWorker[3]
     {
         new Worker(),
         new Robot(),
         new Manager()
     };
     foreach (IWorker worker in workers)
     {
         worker.Work();
     }
     IEat[] eats = new IEat[2]
     {
         new Worker(),
         new Manager()
     };
     foreach (IEat eat in eats)
     {
         eat.Eat();
     }
     IGetSalary[] getSalary = new IGetSalary[2]
     {
         new Worker(),
         new Manager()
     };
     foreach (IGetSalary getSalarys in getSalary)
     {
         getSalarys.GetSalary();
     }
     Console.ReadKey();
 }
 static void Main(string[] args)
 {
     IWorker[] workers = new IWorker[] { new Manager(), new Worker(), new Robot() };
     foreach (var worker in workers)
     {
         worker.Work();
     }
     IEat[] eats = new IEat[] { new Manager(), new Worker() };
     foreach (var eat in eats)
     {
         eat.Eat();
     }
     IGetSalary[] getSalary = new IGetSalary[] { new Manager(), new Worker() };
     foreach (var salary in getSalary)
     {
         salary.GetSalary();
     }
 }
        static void Main(string[] args)
        {
            IWorker[] workers = new IWorker[3]
            {
                new Worker(),
                new Manager(),
                new Robot()
            };

            IEat[] eaters = new IEat[2]
            {
                new Worker(),
                new Manager()
            };


            IGetSalary[] salaries = new IGetSalary[2]
            {
                new Worker(),
                new Manager()
            };
        }
Esempio n. 4
0
 /// <summary>
 /// Контекст позволяет заменить объект Стратегии во время выполнения.
 /// </summary>
 /// <param name="getSalary"></param>
 public void SetStrategy(IGetSalary getSalary)
 {
     this._getSalary = getSalary;
 }
Esempio n. 5
0
 // Обычно Контекст принимает стратегию через конструктор, а также
 // предоставляет сеттер для её изменения во время выполнения.
 public SalaryContext(IGetSalary getSalary)
 {
     this._getSalary = getSalary;
 }