设计模式-抽象工厂

Posted linlf03

tags:

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

一、定义:

抽象工厂提供了一个创建一系列相关或相互依赖的接口

无效指定他们的类

类型:创建型

 

二:适用场景

客户端(应用层)不依赖于产品类实例如何被创建、实现等细节

强调一系列相关产品对象(属于同一产品族)一起使用创建对象需要大量重复的代码

提供一个产品类的库,所有的产品以同样的接口出现,从而使客户端不依赖于具体实现

 

三、优点:

具体产品在应用层代码隔离,无须关心创建细节

将一系列的产品族统一到一起创建

 

四、缺点

规定了所有可能被创建的产品集合,产品族中扩建新的产品困难,需要修改抽象工厂的接口

增加了系统的抽象性和理解难度

 

五、产品等级结构与产品族

技术分享图片

工厂方法和抽象工厂最大的区别

工厂方法针对的产品等级结构

抽象工厂针对的是一个产品族

 

 

图下图: 增加了一个具体工厂 

 技术分享图片

 

 六:Coding

 

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

设计模式-抽象工厂设计模式

设计模式之抽象工厂模式

设计模式 抽象工厂模式

设计模式之抽象工厂模式

工厂模式 - 抽象工厂

java抽象工厂的使用意图是啥?