首页 > 其他分享 >建造者模式

建造者模式

时间:2023-10-10 16:45:16浏览次数:34  
标签:Item 对象 冷饮 建造 模式 Burger 汉堡 Meal

一、概念

建造者模式使用简单的对象一步一步构建一个复杂的对象。

  应用场景:在软件系统中,有时需要创建一个复杂对象,其通常由各个部分的子对象用一定的算法构成。由于需求的变化,这个复杂对象的各个部分会有所不同,但是它们组合在一起的算法是相对稳定的。

二、实现

  我们假设一个快餐店的商业案例,其中,一个典型的套餐可以是一个汉堡(Burger)和一杯冷饮(Cold drink)。汉堡(Burger)可以是素食汉堡(Veg Burger)或鸡肉汉堡(Chicken Burger),它们是包在纸盒中。冷饮(Cold drink)可以是可口可乐(coke)或百事可乐(pepsi),它们是装在瓶子中。

我们将创建一个表示食物条目(比如汉堡和冷饮)的 Item 接口和实现 Item 接口的实体类,以及一个表示食物包装的 Packing 接口和实现 Packing 接口的实体类,汉堡是包在纸盒中,冷饮是装在瓶子中。

  然后我们创建一个 Meal 类,带有 Item 的 ArrayList 和一个通过结合 Item 来创建不同类型的 Meal 对象的 MealBuilderBuilderPatternDemo 类使用 MealBuilder 来创建一个 Meal

  

三、参考资料

  1、https://www.runoob.com/design-pattern/builder-pattern.html

标签:Item,对象,冷饮,建造,模式,Burger,汉堡,Meal
From: https://www.cnblogs.com/xujian2014/p/17755056.html

相关文章

  • Java设计模式之责任链模式
    1.1.概述在现实生活中,常常会出现这样的事例:一个请求有多个对象可以处理,但每个对象的处理条件或权限不同。例如,公司员工请假,可批假的领导有部门负责人、副总经理、总经理等,但每个领导能批准的天数不同,员工必须根据自己要请假的天数去找不同的领导签名,也就是说员工必须记住每个领......
  • Composite 组合模式简介与 C# 示例【结构型3】【设计模式来了_8】
    〇、简介1、什么是组合设计模式?一句话解释:  针对树形结构的任意节点,都实现了同一接口,他们具有相同的操作,可以通过某一操作来遍历全部节点。组合模式通过使用树形结构来组合对象,用来表示部分以及整体层次。组合模式属于结构型模式,多用于递归。官方意图描述:将对象组合成树形......
  • 设计模式之 Observer Pattern观察者模式
    观察者模式Observer  Observer模式为组件向相关接收方【广播】消息提供了灵活的方法;  该模式定义了对象一到多的依赖关系,这样当对象改变状态时,将自动通知并更新他所有的依赖对象;  优点    抽象了主体与Observer之间的耦合关系;    支持广播方式的通信......
  • Java设计模式之工厂设计模式
    1.1.概述需求:设计一个咖啡店点餐系统。设计一个咖啡类(Coffee),并定义其两个子类(美式咖啡【AmericanCoffee】和拿铁咖啡【LatteCoffee】);再设计一个咖啡店类(CoffeeStore),咖啡店具有点咖啡的功能。具体类的设计如下: 在java中,万物皆对象,这些对象都需要创建,如果创建的时候直接new......
  • 主从+哨兵模式
       ......
  • 备忘录模式
    备忘录模式案例引入游戏角色状态恢复问题游戏角色有攻击力,防御力等,在大战BOSS前保存自身的状态(攻击力,防御力),当大战BOSS后攻击力和防御力下降,从备忘录对象恢复到大站前的状态。传统方式实现案例创建一个游戏角色类对应的状态类,给每个游戏角色对象,对应一个对应状态类的对象,用......
  • 【愚公系列】2023年10月 二十三种设计模式(八)-组合模式(Composite Pattern)
    ......
  • 笔记1:环境安装及烧录模式
    1.需要安装ADB工具2.使用RKDevTool.exe 烧录固件 K3568开发板需要进入Loader或Maskrom模式才可执行烧写操作。进入Loader模式的方法:首先按住开发板上的音量+(V+)按键(具体位置请参考按键示意图3.2.3)不松,给开发板上电或复位,此时RKDevTool工具会提示:发现一个LOADER......
  • 设计模式分类(背)
           ......
  • Bridge 桥接模式简介与 C# 示例【结构型2】【设计模式来了_7】
    〇、简介1、什么是桥接模式?一句话解释:  通过一个类的抽象,与另一个类的抽象关联起来,当做桥。此后不管两个抽象类的实现有多少种,均可以通过这个桥来将两个对象联系起来。桥接,顾名思义就是用桥来连接河两岸,将原本不关联的两部分联系起来,且不影响两岸的各自演化,演化出来的不同对......