全部博文(512)
分类:
2006-08-22 10:52:26
factory method模式:
定义一个用于创建对象接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。
工厂方法模式(Factory Pattern)在工厂方法中,工厂类成为了抽象类,其实际的创建工作将由其具体子类来完成。工厂方法的用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中去,强调的是“单个对象”的变化。
1、建立一个工厂
class Product
{
virtual Computer* CreateComputer() =0;
}
2、一个具体实现
class ChinaFactory :public Product
{
//函数实现略
}
3客户端
Product * pDuct = new ChinaFactory();
Computer *computer= pDuct -> CreateComputer ();
比较:factory method模式强调的是“单个对象”的变化。Abstract factory强调的是“系列对象”的变化。