建造者模式

建造者模式:使用多个简单的对象一步一步构建成一个复杂的对象,适用于一些基本的组成不变,但是可以有多种组合,也就是所谓的”套餐”。不多说,直接上代码

第一步创建基础的对象

建造者模式

建造者模式

建造者模式

比如这个,来个蔬菜汉堡

建造者模式

鸡肉汉堡

建造者模式

当然不只是汉堡,那必须得有饮料啊

建造者模式

百事可乐

建造者模式

这样一些基础的组成就创建完成了,接下来就是进行组合了

假如提供鸡肉汉堡+百事可乐,这种套餐,那就创建出来吧

先来一个创建”套餐”的模板

建造者模式

接下来就把我们想要的基础对象放进去

建造者模式

最后直接说需要吃的套餐名称就行

建造者模式

这样一个套餐就创建出来了,不用每次来都说需要吃什么什么,只需要一个名称就行,可以使用基础对象进行任意组合

一个字:绝

下一篇:原型模式

Original: https://www.cnblogs.com/itmuzi/p/16521170.html
Author: itMuzi
Title: 建造者模式

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/592367/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 给ShardingSphere提了个PR

    说来惭愧,干了 10 来年程序员,还没有给开源做过任何贡献,以前只知道嘎嘎写,出了问题嘎嘎改,从来没想过提个 PR 去修复他,最近碰到个问题,发现挺简单的,就随手提了个 PR 过去…

    Java 2023年6月13日
    071
  • Eclipse快捷键

    Original: https://www.cnblogs.com/kongieg/p/12081240.htmlAuthor: kongiegTitle: Eclipse快捷键

    Java 2023年6月8日
    061
  • Spring Ioc源码分析系列–自动注入循环依赖的处理

    Spring Ioc源码分析系列–自动注入循环依赖的处理 前言 前面的文章Spring Ioc源码分析系列–Bean实例化过程(二)在讲解到Spring创建…

    Java 2023年6月8日
    072
  • spring循环依赖的产生与解决

    1.循环依赖的产生 在spring中对象默认都是单例的 ,意味整个容器中只有一个该类的对象。 如图,B类有一个属性a,A类有一个属性b。当B类创建对象时,要给a属性赋值;当A类创建…

    Java 2023年6月8日
    065
  • k8s v-1.20版本部署详细过程[实测可用无坑]

    k8s v-1.20版本部署详细过程[实测可用无坑] 1.部署环境准备 1.1 各软件版本 系统 Docker k8s Linux master 3.10.0-1160.el7.x…

    Java 2023年6月9日
    060
  • 【译】使用Java Locale进行国际化

    在开发软件应用程序时,我们经常强调尊重用户语言和地理区域的重要性和价值。允许用户用他们自己的语言与软件交流可能会大大促进软件的销售。在 Java 语言环境中, Locale则用来阐…

    Java 2023年5月29日
    081
  • Mysql 去回车空格

    MySQL 去除字段中的换行和回车符 解决方法:UPDATE tablename SET xxx= REPLACE(REPLACE(xxx, CHAR(10), ”),…

    Java 2023年6月13日
    073
  • Java开发学习(十三)—-基于注解开发定义第三方bean及注解开发总结

    在前面的博客中定义bean的时候都是在自己开发的类上面写个注解就完成了,但如果是第三方的类,这些类都是在jar包中,我们没有办法在类上面添加注解,这个时候该怎么办? 遇到上述问题,…

    Java 2023年5月29日
    057
  • ASP.NET状态管理之九(会话Session)

    ASP.NET 允许您使用会话状态保存每个活动的 Web 应用程序会话的值,会话状态是 HttpSessionState 类的一个实例。 会话状态与应用程序状态相似,不同的只是会话…

    Java 2023年5月30日
    0119
  • Docker内运行的nginx除了80端口其他端口都无法访问

    请检查nginx容器是否只开启了80端口映射!!! 请检查nginx容器是否只开启了80端口映射!!! 请检查nginx容器是否只开启了80端口映射!!! 环境: Docker: …

    Java 2023年6月5日
    080
  • 使用对象流传输Student类

    上一篇博客已经介绍了如何通过定义原始的字节流来传输Student类,我们接下来继续练习如何通过对象流传输Student类。因为通过对象流传输的对象以及所包含的变量都必须要实现Ser…

    Java 2023年6月5日
    089
  • Day01

    MarkDownd 标题 三级标题 字体 Hellow,World! Hellow,World! Hellow,World! Hellow,World! 引用 选择博客园,走向人生…

    Java 2023年6月13日
    076
  • STC单片机控制28BYJ-48步进电机

    STC单片机4*4按键控制步进电机旋转 28BYJ-48型步进电机说明 * 四相永磁式的含义 28BYJ-48工作原理 让电机转起来 最简单的电机转动程序 电机转速缓慢的原因分析 …

    Java 2023年6月9日
    079
  • Java基础第一天

    一、Java基础语法 由美国sun公司在1995年推出的Java语言 Java之父:詹姆斯·高斯林 Java发展史:2004年Java5.0(Java里程碑),2009年被Orac…

    Java 2023年6月15日
    066
  • FileReader,FileWriter

    FileReader 一个一个字符的读: package com.gao.IO; import java.io.File; import java.io.FileNotFoundE…

    Java 2023年6月5日
    070
  • java static learning

    /static learning / class one { public int a = 5; static { // 类加载时就运行代码码 System.out.println…

    Java 2023年5月29日
    070
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球