## 抽象工厂模式
###
是工厂方法模式的升级版本,当需要创建的产品有多个产品线的时候使用抽象工厂模式是比较好的选择。
抽象工厂模式在spring中应用得最为广泛的一种设计模式
###
⼯⼚⽅法模式引⼊⼯⼚等级结构,解决了简单⼯⼚模式中⼯⼚类职责过重的问题
但⼯⼚⽅法模式中每个⼯⼚只创建⼀类具体类的对象,
后续发展可能会导致⼯⼚类过多,因此将⼀些相关的具体类组成⼀个“具体类族”,由同⼀个⼯⼚来统⼀⽣产,
强调的是⼀系列相关的产品对象!!!
###
![](https://img.kancloud.cn/20/5e/205ecbe19896e41815b8f18d47e1a5e6_623x441.png)
###
## 实现步骤
###
1、定义两个接⼝ Pay、Refund
2、创建具体的Pay产品、创建具体的Refund产品
3、创建抽象⼯⼚ OrderFactory 接⼝⾥⾯两个⽅法 createPay/createRefund
4、创建⽀付宝产品族AliOderFactory,实现OrderFactory抽象⼯⼚
5、创建微信⽀付产品族WechatOderFactory,实现OrderFactory抽象⼯⼚
6、定义⼀个超级⼯⼚创造器,通过传递参数获取对应的⼯⼚
###
![](https://img.kancloud.cn/b1/93/b193b73dbcc150d21bf29b89e481ecee_619x378.png)
###
## 具体实现(云效代码study-java项目当中设计模式当中有代码案例)
###
![](https://img.kancloud.cn/ce/f8/cef880387520c3baf14e9491d09b4658_1504x981.png)
###
![](https://img.kancloud.cn/e7/36/e7365f091ed83e492c6c91507a610d88_1385x688.png)
- 设计模式六大原则
- 常见的三大设计模式分类
- 创建型模式之单例模式
- 单例模式之懒汉
- 单例模式之饿汉
- 单例模式之如何选择懒汉饿汉
- 什么情况下使用单例模式
- 创建型模式之工厂模式
- 简单工厂模式
- 工厂方法模式
- 抽象工厂模式
- 创建型模式之原型模式
- 创建型模式之建造者模式
- 结构型模式之适配器模式
- 接口的适配器模式
- 类的适配器模式
- 结构型模式之桥接模式
- 结构型模式之桥接模式和适配器模式的区别
- 结构型模式之装饰器模式
- 结构型模式之代理模式
- 结构模式之外观模式
- 结构模式之享元模式
- 行为模式之策略模式
- 行为模式之模板模式
- 行为模式之观察者模式
- 行为模式之责任链模式
- 行为模式之命令模式
- 行为模式之迭代器模式
- 行为模式之备忘录模式
- 行为模式之状态模式