1.场景
工厂听这个名字就知道一个产生的地方。同样工厂模式也是创建型模式,我们用的电脑、手机、电视等,都是工厂进行生产的。即工厂创造出来的。现在我们需要造一台电脑,工厂生产的时候一般分为2步,第一步硬件的组装,第二步安装电脑对应的操作系统。
2.工厂方法结构图
3.工厂方法的实现
Factory抽象类用于实现定义电脑生产部步骤,以及生产的方法和安装系统的方法,光看Factory的时候是不是感觉很像模板方法模式。实际上工厂方法和模板方法很相似,只是工厂方法用于创建实例。将模板方法的子类用于实例的创建就是工厂方法。
Product抽象类用于定义产品的功能,例如所有电脑或者手机等都具备使用功能。
ComputerFactory用于具体的工厂实现,比如具体的生产电脑以及具体的给电脑安装操作系统。