static void Main(string[] args) { Console.WriteLine("Hello World!"); Console.WriteLine("--------------------FactoryMethodPattern--------------------"); Console.WriteLine(""); #region 简单工厂 var food1 = FoodSimpleFactory.CreateFood("西红柿炒蛋"); food1.Print(); var food2 = FoodSimpleFactory.CreateFood("土豆肉丝"); food2.Print(); #endregion #region 工厂方法 //客户端调用 //初始化红旗汽车工厂 var hongQiCarFactory = new HongQiCarFactory(); //生产宏碁汽车 var hongQiCar = hongQiCarFactory.CreateCar(); hongQiCar.Go(); var aoDiCarFactory = new AoDiCarFactory(); var aoDiCar = aoDiCarFactory.CreateCar(); aoDiCar.Go(); var benChiCarFactory = new BenChiCarFactory(); var benChiCar = benChiCarFactory.CreateCar(); benChiCar.Go(); #endregion Console.ReadLine(); }
//工厂方法模式的调用 public static void GetFactory() { //初始化创建汽车的两个工厂 Factory hongQiCarFactory = new HongQiCarFactory(); Factory aodiCarFactory = new AoDiCarFactory(); //生产一辆红旗汽车 Car hongqi = hongQiCarFactory.CreateCar(); hongqi.Go(); //生产一辆奥迪汽车 Car aoDi = aodiCarFactory.CreateCar(); aoDi.Go(); Console.Read(); }