案例分析:
工厂方法定义一个用于创建对象的接口,但是让子类决定实例化哪个类。压注成型演示了这种模式。塑料玩具制造商加工塑料粉,将塑料注入到希望形状的模具中。玩具的类别(车,人物等等)是由模具决定的。
意图:
它的用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。在工厂方法模式中,核心的工厂类不再负责所有的产品的创建,而是将创建的工作交给子类去做。这个核心类成为一个抽象工厂的角色,仅负责给出具体工厂子类必须实现的接口,而不接触哪一个产品类实例化的细节。
结构图:
程序代码:
#include <iostream.h>
class cMaMoJu
{
public:
};
class cCheMoJu
{
public:
};
class cWanJuGongChang
{
public:
protected:
};
class cWanJuMaGongChang:public cWanJuGongChang
{
protected:
};
class cWanJuCheGongChang:public cWanJuGongChang
{
protected:
};
int main()
{
}
运行结果:
生产玩具马模具
给该模具注入材料,使其成形
美化产品,完成产品生产
生产模具车模具
给该模具注入材料,使其成形
美化产品,完成产品生产
Press any key to continue