【设计模式:工厂模式】

目录

工厂模式的特点:

工厂模式种类

简单工厂模式:

简单工厂模式的创建步骤:

简单工厂代码:

[工厂模式 :](#工厂模式 :)

特点:

工厂模式代码:

抽象工厂模式

抽象工厂的主要组成部分:

抽象工厂的优点:

抽象工厂模式代码:


工厂模式的特点:

  1. 便于维护
  2. 解耦合高
  3. 流程复杂

工厂模式种类

简单工厂模式:

简单工厂模式的创建步骤:

  1. 创建一个工厂类,一般在简单工厂中,只有一个工厂类
  2. 在工厂类中添加一个公共的成员函数(工厂函数)以此来创建对象
  3. 创建一个工厂类对象,通过该对象调用该类中的工厂函数,生产一个指定类型的对象

简单工厂代码:

简单工厂模式(一对多的生产原则)适合创建对象不多的情况(创建的对象太多,需要对仅有一个工厂类进行修改,破坏了工厂模式中的封闭原则),当创建对象较多时考虑使用工厂模式(一对一的生产原则)

工厂模式 :

特点:

工厂类中只实现一种对象 ,通俗一点就是:工厂对应只生产一种产品,例如,盐,味精,鸡精的生产都拥有单独的生产工厂。所以工厂模式有多个工厂类

工厂模式代码:

抽象工厂模式

抽像工厂类是一个大类,例如要制造一艘船,船就是一个大类,在大类中把船分为多个组成部分,根据需求,制造不同类型的材料组合一艘船

抽象工厂的主要组成部分:

  1. 抽象工厂
  2. 具体工厂
  3. 产品接口
  4. 具体产品

抽象工厂的优点:

  1. 隔离了产品的具体实现:客户端只需注意产品的接口,不需要了解产品创建的具体实现
  2. 方便产品的整体替换:同一产品的不同实现,只需切换具体工厂
  3. 确保产品一致性:产品的实现都是遵循着一套设计规则的实现

抽象工厂模式代码:

相关推荐
咖啡八杯1 小时前
GoF设计模式——模板方法模式
java·后端·spring·设计模式
饼干哥哥10 小时前
Openclaw已死?任何Agent都能用Cli实现AI自主运营跨境电商
设计模式·openai·ai编程
折哥的程序人生 · 物流技术专研12 小时前
第4篇:抽象工厂模式——产品族一键创建
java·设计模式·抽象工厂模式·创建型模式·编程进阶·产品族·扩充系列
geovindu1 天前
go: Cascading Failures Pattern
开发语言·后端·设计模式·golang·反模式·级联失效反模式
端庄的战斗机1 天前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
饼干哥哥1 天前
我开发了一个「吃掉」别人Skill来升级的饕餮.Skill,现在免费开源
人工智能·设计模式·开源
CaffeinePro1 天前
什么是系统架构?架构师到底在做什么?
设计模式·架构
AI人工智能+电脑小能手1 天前
【大白话说Java面试题 第156题】【06_Spring篇】第16题:Spring 用到了哪些设计模式?
java·spring·设计模式·代理模式·工厂模式
前端百草阁2 天前
JavaScript 设计模式(23 种)
开发语言·前端·javascript·设计模式
geovindu2 天前
java: Singleton Pattern
java·开发语言·后端·单例模式·设计模式·创建型模式