zoukankan      html  css  js  c++  java
  • 设计模式之工厂模式

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

     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     }
  • 相关阅读:
    线性表的顺序存储结构
    Arrays数组类使用介绍
    collection各实现类用途建议
    【转】数据结构collection接口和map接口架构图
    java 面向对象特性说明
    文件的输入输出操作IO
    sql 约束用法
    select into 在mysql中失效的替换办法
    inner join 、left join 、right join 和full join的区别
    Tomcat 启动过程
  • 原文地址:https://www.cnblogs.com/luoyangcn/p/4127156.html
Copyright © 2011-2022 走看看