工厂方法设计模式

概述

  • “工厂方法模式” 是对简单工厂模式的进一步抽象化
  • 其好处是可以使系统在不修改原来代码的情况下引进新的产品,即满足开闭原则

实现过程

定义接口与实现类

创建工厂

使用

优缺点

优点

  • 用户只需要知道具体工厂的名称就可得到所要的产品,无须知道产品的具体创建过程
  • 灵活性增强,对于新产品的创建,只需多写一个相应的工厂类
  • 典型的 解耦 框架。高层模块只需要知道产品的抽象类,无须关心其他实现类,满足迪米特法则、依赖倒置原则和里氏替换原则

缺点

  • 类的个数容易过多,增加复杂度
  • 增加了系统的抽象性和理解难度
  • 抽象产品只能生产一种产品,此弊端可使用抽象工厂模式解决

UML 图

在 JDK 源码中的应用

  • URLStreamHandlerFactory
  • Log
posted @ 2021-07-20 22:34  BNTang  阅读(42)  评论(0编辑  收藏  举报