chap07-1设计模式补充
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -*- 无法对修改关闭! Pizza orderPizza(String type){ Pizza pizza; if(type.equal(“cheese”) pizza = new CheesePizza(); else if(type.equal(“greek”) pizza = new GreekPizza(); else if(type.equal(“clam”)) pizza = new CalmPizza(); pizza.prepare(); pizza.bake(); pizza.cut(); pizza.box(); return pizza; } 这是不变部分 这是变化部分 无法对修改关闭! -*- 抽取创建匹萨的代码 Pizza orderPizza(String type){ Pizza pizza; pizza.prepare(); pizza.bake(); pizza.cut(); pizza.box(); return pizza; } if(type.equal(“cheese”) pizza = new CheesePizza(); else if(type.equal(“greek”) pizza = new GreekPizza(); else if(type.equal(“clam”)) pizza = new CalmPizza(); -*- 封装创建匹萨的代码 public class SimplePizzaFactory{ public Pizza createPizza(String type){ Pizza pizza = NULL; if(type.equal(“cheese”) pizza = new CheesePizza(); else if(type.equal(“greek”) pizza = new GreekPizza(); else if(type.equal(“clam”)) pizza = new CalmPizza(); return pizza; } } 封装创建匹萨的过程,变化时只需要修改该简单工厂 -*- 重整匹萨店PizzaStore public class PizzaStore{ SimplePizzaFactory factory; public PizzaStroe(SimplePizzaFactory f){ this.factory=f; } public Pizza orderPizza(String type){ Pizza pizza; pizza = factory.createPizza(type); pizza.prepare(); pizza.bake(); pizza.cut(); pizza.box(); return pizza; } } -*- 重整匹萨店PizzaStore -*- 加盟匹萨店 希望在不同地方开设分店 加盟店根据区域特点,需要提供不同风味的匹萨,但需要控制匹萨的制作过程 创建不同区域的各自的匹萨工厂 NYPizzaFactory nyFactory=new NYPizzaFactory(); PizzaStore nyStore=new PizzaStroe(nyFactory); nyStore.orderPizza(“Veggie”); 不同的工厂,除了改变风味外,可能也会改变制作流程! -*- 给匹萨店设置框架 public abstract class PizzaStore{ public Pizza orderPizza(String type){
您可能关注的文档
- 8.24泄洪洞开挖及支护施工组织设计.doc
- Ch02-数据类型及其运算.ppt
- 8.2222征税和纳税.ppt
- 8.25孕期妇科疾病预防与护理.ppt
- 人教版《比尾巴》完整课件ppt.ppt
- 8.28班级建设.ppt
- 标准农贸市场管理制度.doc
- 8.2总角动量的本征态.ppt
- 8.2全等三角形.ppt
- ch14轴联轴器离合器.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- SJ∕T 10460-2016 太阳光伏能源系统图用图形符号.pdf
- 新求精德语强化教程(第4版)初级1课后练习答案(改进版) .pdf VIP
- 北师大版三年级下册数学全册教学设计(配2026年春改版教材).docx
- (2026年)跌倒坠床护理综合指南PPT课件.pptx VIP
- 工程设计应急响应方案(3篇).docx VIP
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf VIP
- ntvf调试资料解读.doc VIP
- 电影《色.戒》的叙事伦理.doc VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 佳能EOS1500D基本使用说明书说明书.pdf VIP
原创力文档

文档评论(0)