static void MyCoffe(HotDrink xCoffee) { CupOfCoffee x = new CupOfCoffee(); x = (CupOfCoffee) xCoffee; x.AddMilk(); x.Drink(); x.Wash(); }
static void Main(string[] args) { Console.WriteLine("1)New object CupOfCoffe\n2)New object CupOfTea"); ProcessDelegate process; int i; do { i=Convert.ToInt32(Console.ReadLine()); } while (i<1 || i>2); switch (i) { case 1: { CupOfCoffee xCoffee = new CupOfCoffee(); process = new ProcessDelegate(MyCoffe); process(xCoffee); } break; case 2: { CupOfTea xTea = new CupOfTea("White",100,"Цейлон"); process = new ProcessDelegate(MyTea); process(xTea); } break; } Console.ReadKey(); }