工厂方法模式

来源:互联网 发布:显微图像软件 编辑:程序博客网 时间:2024/06/06 11:42


先构建一个工厂接口
interface IFactory{
Operation CreateOperation();
}
然后加减乘除个建一个具体工厂区去实现这个接口
class AddFactory extend IFactory{
public Operation CreateOperation(){
return new OperationAdd();
}
}
class SubFactory extend IFactory{
public Operation CreateOperation(){
return new OperationSub();
}
}
...略
客户端的实现是这样的:
IFactory  operation =new AddFactory();
Operation oper=operFactory.CreateOperation();
oper.NumberA=1;
oper.Numberb=2;
double result=oper.GetResult();
简单工厂Vs工厂方法

工厂方法比简单工厂更好些,当有新的需求是,简单工厂需要修改工厂类,而工厂方法不需要修改工厂类,只要增加一个方法类,和一个方法工厂就可以了,当一个方法实现的不是很好的好,只要把那个工厂方法替换掉就可以了,什么也不用修改!