简单工厂模式
简单工厂特点:
1.简单工厂能产生各种不同种类的产品,但是这些种类最终通常继承同一个基类。
2.简单工厂方法(通常为static)通常返回一个基类对象,通过该对象,利用虚函数,多态性,可以控制各个子类的操作行为。
优点:
1.需要其它不同的子类时,直接在工厂中添加,不会影响其它子类。
2.简单工厂通常用来产生不同的对象。
eg:
class Parent
{
public:
virtual action() = 0;
}
class Child1 : Parent;
class Child2 : Parent;
class Child3 : Parent;
class Factory
{
static Parent CreateInstance(string classname)
{
Parent temp;
switch(classname)
{
case 0:
temp = new Child1;
break;
case 0:
temp = new Child2;
break;
case 2:
temp = new Child3;
break;
return temp;
}
}
}
客户端:
Parent ss = Factory.CreateInstance( classname);
ss.action();

浙公网安备 33010602011771号