static void Main(string[] args) { Console.WriteLine("Hello World!"); //Console.WriteLine("Strategy Demo"); //DecoyDuck duck = new DecoyDuck(); //duck.PerformFly(); Beverage beverage = new DarkRoast(); beverage = new Mocha(beverage); beverage = new Mocha(beverage); Console.WriteLine(beverage.getDescription()); Console.WriteLine("Cost " + beverage.cost()); Console.ReadKey(); }
public static void TestDecorate() { Console.WriteLine("\n\n\n--------------------测试装饰者模式--------------------"); //客人点了一杯espresso Beverage espresso = new Espresso(); //客人点了一杯拿铁 Beverage natie = new NaTie(); espresso = new Milk(espresso);//添加牛奶 espresso = new Sugar(espresso);//添加糖 var desEspresso = espresso.getDescription(); var costEspresso = espresso.Cost(); Console.WriteLine("{0}共花费了{1}元", desEspresso, costEspresso); natie = new Milk(natie);//加奶 natie = new Milk(natie);//加奶 natie = new Sugar(natie);//加糖 natie = new Mocha(natie);//加摩卡 var desNatie = natie.getDescription(); var costNatie = natie.Cost(); Console.WriteLine("{0}共花费了{1}元", desNatie, costNatie); }