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

时间:2025-04-09 16:34:01

1、简单工厂模式UML

  UML如下:

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

图1. 简单工厂模式UML

2、C++实现

  类视图如下:

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

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

  其中,SimpleFactory实现为:

 Product * SimpleFactory::Create(std::string pStr) {

     if ("ConcreteProductA" == pStr) {
ConcreteProductA * cpa = new ConcreteProductA();
5 return cpa;
}
else if ("ConcreteProductB" == pStr) {
ConcreteProductB * cpb = new ConcreteProductB();
return cpb;
}
else {
return nullptr;
}//end if else }//end method Create

3、Java实现

  类视图为:

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

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

  其中,SimpleFactory实现为:

 /*简单工厂类*/
public class SimpleFactory { //简单工厂方法。
public static Product Create(String pString) {
if (pString.equals("ConcreteProductA")) {
return new ConcreteProductA();
} else if (pString.equals("ConcreteProductB")) {
return new ConcreteProductB();
} else {
return null;
}//end if else }//end method Create }//end class SimpleFactory

4、点击下载源码