zoukankan      html  css  js  c++  java
  • 设计模式──简单工厂模式

    一、    简单工厂模式又称静态工厂方法模式(Static Factory Method),它不是Gof 所讲的23种设计模式之一,但是它却是我们在编码过程中经常使用的方法之一。

        1.静态工厂方法统一管理对象的创建。
    静态工厂方法通过传入的参数判断决定创建哪一个产品的实例,封装了对象的创建,客户端只管消费,实现了对责任(模块)的分割。

        2.静态工厂方法推迟了产品的实例化。
    通过XML配置文件就能改变具体要创建的产品实例,修改为其它的产品实例,代码不须重新编译。

     

    二、实现:

     class CProduct{                                   //产品抽象接口

    public:

      virtual void info()=0;

    };

     

    class ProductA::CProduct{

    public:

      virtual void info(){

        cout<<"PoductA."<<endl;

      }

    };

     

    class ProductB:CProduct{

    public:

      void info(){

        cout<<"ProductB."<<endl;

      }

    };

    class CFactory{

    public:

      CProduct * produce(char cName){

        switch(cName){

          case 'A':

            return new ProductA();

            break;

          case 'B':

            return new productB();

            break;

          default:

            break;

        }

      }

    }; 

     

     

    int main(){

      CFactory factory;

      CProduct *prodcut=factory.produce('A');

      product->info();

      return 0;

    }

  • 相关阅读:
    MongoDB入门
    查看端口通不通
    jQuery通过name获取值
    thinking in java
    xml配置文件解释
    Spring定时器时间设置规则
    修改序列(Sequence)的初始值(START WITH)
    Go语言实现简单的一个静态WEB服务器
    [转载]XML非法字符的处理
    IIS7解决文件上传大小问题
  • 原文地址:https://www.cnblogs.com/buffer/p/1620103.html
Copyright © 2011-2022 走看看