• 设计模式之工厂模式


    工厂模式的作用就是,需要啥对象,就返回对象的实例回来,

     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     }
  • 相关阅读:
    [資料]VS2008技巧
    [資料]MarshalAs的用法
    MS SQL Server 2000安装不成功的原因
    Zend產品線
    [轉]Flex 开发必备10武器
    [轉]C#中的XML注释
    [轉]onpropertychange事件
    [轉]fckeditor添加自定义按钮
    [資源]Web設計資源以及线框工具
    [轉]JS中showModalDialog 详细使用
  • 原文地址:https://www.cnblogs.com/luoyangcn/p/4127156.html
Copyright © 2020-2023  润新知