1、简单工厂模式

 

简单工厂模式包括三个角色:接口,接口的具体实现类,工厂。

具体操作步骤:首先定义接口类,接口类就是一个interface类,在接口中定义好方法,然后再将方法在接口的具体实现类里统一实现,最后在工厂类中统一进行生产。

2、工厂方法模式

    工厂方法模式与简单工厂模式不同,在工厂方法模式中,核心的工厂类不再负责具体产品实例的创建,而仅仅是需要负责给出具体工厂子类必须实现的接口,让工厂子类去负责具体产品实例的创建。工厂方法模式包括四个角色:接口,接口的具体实现类,工厂接口,具体工厂接口的实现类。

 

    工厂方法使用继承,把对象的创建委托给子类,子类实现工厂方法来创建对象。

    工厂方法将客户代码从需要实例化的具体子类中解耦,或者目前还不知道将来需要实例化那些具体类时使用工厂方法模式。

 

3、抽象工厂模式

   抽象工厂使用对象组合,对象的创建被实现在工厂接口所暴露出来的的方法中;
   抽象工厂用来创建整个产品家族和将制造的相关产品集合起来,故当要改变产品时(新增,修改)就必须改变接口,抽象工厂中的产品经常会用工厂方法实现;