设计模式——工厂方法模式

一、概念:此模式的核心精神是封装类中变化的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦、复用和方便后期维护拓展的目的。它的核心结构有四个角色,分别是抽象工厂;具体工厂;抽象产品;具体产品。

二、UML示意图:

 

 三、优缺点

优点:

  • 当需要增加新的产品(Product)时不需要更改原代码,只需要增加新的具体工厂类和具体产品类就好了,符合开闭原则。
  • 调用者不需要关心对象的生成过程

缺点:

  • 需要对系统中的所以产品类和具体工厂类有所了解
  • 因为每次增加新产品都要加新的工厂类和产品类,会造成系统有很多小类
  • 因为所有的创建对象逻辑都集中在工厂类中,所以一旦工厂类出错,整个系统都会受影响。

四、简单工厂模式和工厂方法模式的区别

posted @ 2020-03-14 03:46  夜里寻星  阅读(110)  评论(0)    收藏  举报