简单工厂模式是工厂模式中家族最简单实用的模式,可以理解为不同工厂模式的一个特殊的实现。
值得注意的是:简单工厂模式并不属于23种设计模式之一。但是它是抽象工厂模式、工厂模式的基础,并且也有广泛的应用。
概念
简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。
作用
介绍简单工厂模式之前通过一个披萨项目的例子来引出问题,然后给出简单工厂模式这种解决方案,然后随着披萨项目的不断扩展,遇到新的问题,引出工厂方法模式;然后又遇到新的问题,引出最终的解决方案(抽象工厂模式)。
披萨项目介绍
比如一个披萨店,店长一名,目前卖两种口味的披萨,GreekPizza和CheesePizza,每个披萨都有prepare(),bake(),cut(),box()这4种步骤、原料、烘焙、切割、打包、最后给用户吃。
把上述这个过程抽象后,类图如下:
Pizza披萨抽象类
public abstract class Pizza{
//四个抽象方法
public abstract void prepare();
public abstract void bake();
public abstract void cut();
public abstract void box();
}
GreekPi