static void Main(string[] args) { //Abstract factory #1 AbstractFactory factory1 = new AbstractFactory1(); Client client1 = new Client(factory1); client1.Run(); //Abstract factory #2 AbstractFactory factory2 = new AbstractFactory2(); Client client2 = new Client(factory2); client2.Run(); //Example IKFCFactory cheap = new CheapPackageFactory(); cheap.Operation(); IKFCFactory luxury = new LuxuryPackageFactory(); luxury.Operation(); Console.ReadKey(); }
private static void Main(string[] args) { #region 结构实现 // Abstract factory #1 Structural.AbstractFactory factory1 = new ConcreteFactory1(); Client client1 = new Client(factory1); client1.Run(); // Abstract factory #2 Structural.AbstractFactory factory2 = new ConcreteFactory2(); Client client2 = new Client(factory2); client2.Run(); #endregion Console.WriteLine("******************************"); #region 实践应用 //实惠套餐 IKFCFactory factory = new CheapPackageFactory(); KFCFood food = factory.CreateFood(); KFCDrink drink = factory.CreateDrink(); Console.WriteLine("实惠套餐:"); food.Display(); drink.Display(); //豪华套餐 factory = new LuxuryPackageFactory(); food = factory.CreateFood(); drink = factory.CreateDrink(); Console.WriteLine("豪华套餐:"); food.Display(); drink.Display(); #endregion Console.ReadKey(); }