设计模式——创建型软件设计模式——工厂方法模式

一、定义:

工厂方法模式:  又称为工厂模式、多态工厂模式模式,通过定义工厂父类负责定义创建对象的公共接口,而子类则负责生成具体的对象。    每当有一个新的产品类被加入到产品类的结构中时,在工厂方法类中就必须增加适当的条件语句,以便能够在合适的条件下创建新增加的类的实例。

      介绍:   首先需要一个接口作为超类,名为creator,接口中有一个方法,叫factory(); 然后可以用和产品类相同的结构产生创建者类结构,其中包括creatorA 和 createB, 各自负责创建相应的ProductA 和 ProductB的对象。以下类图展示:

二、类图:

设计模式——创建型软件设计模式——工厂方法模式_第1张图片

三、使用步骤:

   (1): 创建好抽象工厂类,定义具体工厂的公共接口,

   (2): 创建好抽身产品类,定义具体产品的公共接口,

   (3): 创建具体产品类,定义生产的具体产品,

   (4): 创建具体工厂类,定义创建对应具体产品实例的方法,

   (5): 外部通过调用具体的工厂类方法,对应创建出不同的具体产品类的实例。

四、工厂方法模式的优点:

     1.  工厂方法模式将创建对象的逻辑与任务交给了工厂类。

     2.  工厂方法模式支持开闭原则。

     3.  在系统中加入新产品时,无需修改抽象工厂和抽象产品提供的接口;无需修改客户端,也无需修改其他的具体工厂和具体产品,只要添加一个具体工厂和具体产品就可以了。

五、工厂方法模式的实例:

待续更新....

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