工厂模式的作用就是,需要啥对象,就返回对象的实例回来,
1 /// <summary> 2 /// 创建一系列相互依赖对象的创建工作: 3 //假设一个游戏开场景: 4 //我们需要构造"道路"、"房屋"、"地道","从林"...等等对象 5 //需要 道路 就返回new 的道路对象回去, 6 // 需要 房屋,就返回房屋对象回去 7 //工厂模式 指定了具体的类 8 9 /// </summary> 10 class Program 11 { 12 static void Main(string[] args) 13 { 14 Factory[] factory = { new FactoryA(), new FactoryB() }; 15 foreach (var item in factory) 16 { 17 item.FactoryProduct().ProductProduce(); 18 } 19 Console.Read(); 20 } 21 } 22 23 //工厂 24 abstract class Factory 25 { 26 public abstract Product FactoryProduct(); 27 } 28 29 30 class FactoryA : Factory 31 { 32 public override Product FactoryProduct() 33 { 34 return new ProductA(); 35 } 36 } 37 class FactoryB : Factory 38 { 39 public override Product FactoryProduct() 40 { 41 return new ProductB(); 42 } 43 } 44 // 产品 45 abstract class Product 46 { 47 public abstract void ProductProduce(); 48 } 49 class ProductA : Product 50 { 51 public override void ProductProduce() 52 { 53 Console.WriteLine("生产ProductA"); 54 } 55 } 56 57 class ProductB : Product 58 { 59 public override void ProductProduce() 60 { 61 Console.WriteLine("生产ProductB"); 62 } 63 }