🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 抽象工厂模式 ### 是工厂方法模式的升级版本,当需要创建的产品有多个产品线的时候使用抽象工厂模式是比较好的选择。 抽象工厂模式在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)