设计模式之 简单工厂模式

1.以简单计算器为例,采用简单工厂模式来设计:

2.UML类图,一目了然

设计模式之 简单工厂模式_第1张图片

3.Operate是操作类,是一个基类,各种操作继承该基类,并重写其中的方法,从而使代码维护变得简单许多,

OperateFactory是工厂类,好像工厂一样,加工一个个的产品,此处是生成一个个Operate子类的实例。

Calculate是调用main方法的类

4源代码如下:

设计模式之 简单工厂模式_第2张图片

设计模式之 简单工厂模式_第3张图片

设计模式之 简单工厂模式_第4张图片

设计模式之 简单工厂模式_第5张图片

设计模式之 简单工厂模式_第6张图片

设计模式之 简单工厂模式_第7张图片



设计模式之 简单工厂模式_第8张图片

在main函数中需要注意

oper.setNumber(a);

oper.setNumber(b);的位置,不能放在oper=OperateFactory.createFacotry()之前,因为在这之前还没有创建Operatez子类对象。










问题:这种模式还能用在其它什么情境中?

你可能感兴趣的:(设计模式,产品)