设计模式之抽象工厂模式(创建型)

Posted mzq123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式之抽象工厂模式(创建型)相关的知识,希望对你有一定的参考价值。

模式定义

抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。抽象工厂模式又称为Kit模式,属于对象创建型模式。

模式角色

抽象工厂模式包含如下角色:

AbstractFactory:抽象工厂

ConcreteFactory:具体工厂

Product:具体产品

AbstractProduct:抽象产品

简单例子

抽象工厂类:

public abstract class AbstractFactory
{
    public abstract AbstractProductA createProductA();
    public abstract AbstractProductB createProductB();
}

具体工厂类:

public class ConcreteFactory1 extends AbstractFactory
{
    public AbstractProductA createProductA()
    {
        return new ConcreteProductA1();
    }
    public AbstractProductB createProductB()
    {
        return new ConcreteProductB1();
    } 
}

抽象工厂模式和工厂模式的区别

抽象工厂模式是所有形式的工厂模式中最为抽象和最具一般性的一种形态。抽象工厂模式与工厂方法模式最大的区别在于,工厂方法模式针对的是一个产品等级结构,而抽象工厂模式则需要面对多个产品等级结构。

三种工厂方法对比:https://blog.csdn.net/u014427391/article/details/80067882

以上是关于设计模式之抽象工厂模式(创建型)的主要内容,如果未能解决你的问题,请参考以下文章

6创建型模式之工厂模式与抽象工厂模式

浅析设计模式——创建型模式之Abstract-Factory(抽象工厂模式)

设计模式从青铜到王者第七篇:创建型模式之抽象工厂模式(Abstract Factory)

设计模式——创建型模式之抽象工厂模式

C#设计模式之三抽象工厂模式(AbstractFactory)创建型

一起来学设计模式-----创建型模式之抽象工厂