简单工厂模式的C++、Java实现

1、简单工厂模式UML

  UML如下:

图1. 简单工厂模式UML

 

2、C++实现

  类视图如下:

图2. C++实现简单工厂模式类视图

   其中,SimpleFactory实现为:

 1 Product * SimpleFactory::Create(std::string pStr) {
 2 
 3     if ("ConcreteProductA" == pStr) {
 4         ConcreteProductA * cpa = new ConcreteProductA(); 
5
return cpa; 6 } 7 else if ("ConcreteProductB" == pStr) { 8 ConcreteProductB * cpb = new ConcreteProductB();
9 return cpb; 10 } 11 else { 12 return nullptr; 13 }//end if else 14 15 }//end method Create

 

3、Java实现

  类视图为:

    

图3. Java实现简单工厂模式类视图

  其中,SimpleFactory实现为:

 1 /*简单工厂类*/
 2 public class SimpleFactory {
 3     
 4     //简单工厂方法。
 5     public static Product Create(String pString) {
 6         if (pString.equals("ConcreteProductA")) {
 7             return new ConcreteProductA();
 8         } else if (pString.equals("ConcreteProductB")) {
 9             return new ConcreteProductB();
10         } else {
11             return null;
12         }//end if else
13         
14     }//end method Create
15     
16 }//end class SimpleFactory

 

4、点击下载源码

转载于:https://www.cnblogs.com/minbaba/p/6361159.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值