前言 前面介绍了单例模式及工厂模式相关知识及示例,今天主要介绍的是抽象工厂模式,上一篇我们讲了工厂模式。将创建对象的任务委托给子类,延迟创建。解决工厂中责任的划分。实现具体工厂与产品之间的一一对应。解决的是”单个对象”的问题。 华为工厂除了生产华为手机之外。肯定也会有原件配套的充电线和耳机。这时工厂对应的是一套产品该如何解决了呢?显然不再适合使用工厂模式了。今天将的抽象工厂模式将会比较好的解决此问题。抽象工厂模式解决的是”一系列对象”的问题、解决多套变化的问题。 抽象工厂模式介绍 一、 来由 在我们编程的过程中难免会出现”一系列相互依赖对象”的创建问题,往往会有由于需要的改变增加或减少对象的创建。为了面对解决这种”一系列的相互依赖的对象”的创建工作的紧密耦合性,出现了其解决方案——抽象工厂模式。 二、 意图 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 三、 案例图 四、 与工厂模式区别 工厂模式: 1、解决 ” 单个对象 ” 的问题 2、工厂类与产品类一一对应关系 抽象工厂模式: 1、解决 ” 一系列对象 ” 的问题 2、工厂类与产品类是一对多的关系(一对应一系列想依赖的产品) 工厂模式讲的是一个华为手机工厂生产一个华为手机,要生产其他的产品需另加工厂。抽象工厂模式讲的是一个华为手机工厂可以生产一系列的华为手机产品(手机、耳机、充电器)。