- 13
- 0
- 约5.15千字
- 约 17页
- 2016-11-27 发布于河南
- 举报
第十一章 中介者模式
第十二章 中介者模式 一 、 概述 二、中介者模式的结构与使用 模式的结构的描述与使用 古代相互交战的A,B,C三方,想通过一个中介者调停之间的战火。A方委托调停者转达的信息是:“要求B方归还曾抢夺的100斤土豆,要求C方归还曾抢夺的20头牛”;B方委托调停者转达的信息是:“要求A方归还曾抢夺的10只鸡,要求C方归还曾抢夺的15匹马”;C方委托调停者转达的信息是:“要求A方归还曾抢夺的300斤小麦,要求B方归还曾抢夺的50头驴”。 public void deliverMess(Colleague colleague,String [] mess){ if(colleague==colleagueA){ if(mess.length=2){ colleagueB.receiverMess(colleague.getName()+mess[0]); colleagueC.receiverMess(colleague.getName()+mess[1]); } } else if(colleague==colleagueB){ if(mess.length=2){ colleagueA.receiverMess(colleague.getName()+mess[0]); colleagueC.receiverMess(colleague.getName()+mess[1]); } } else if(colleague==colleagueC){ if(mess.length=2){ colleagueA.receiverMess(colleague.getName()+mess[0]); colleagueB.receiverMess(colleague.getName()+mess[1]); } } } } 三、中介者模式的优点 四、适合使用中介者模式的情景 许多对象以复杂的方式交互,所导致的依赖关系使系统难以理解和维护。 一个对象引用其他很多对象,导致难以复用该对象。 * * * 中介者模式 用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 Mediator Pattern Define an object that encapsulates how a set of objects interact.Mediator promotes loose coupling by keeping objects from referring to each other explicitly, and it lets you vary their interaction independently. * * 中介者模式是封装一系列的对象交互的成熟模式,其关键是将对象之间的交互封装在称作中介者的对象中,中介者使各对象不需要显示地相互引用,这些对象只包含中介者的引用。当系统中某个对象需要和系统中另外一个对象交互时,只需将自己的请求通知中介者即可。 * * 模式的结构中包括四种角色: 中介者(Mediator) 具体中介者(ConcreteMediator) 同事(Colleague) 具体同事(ConcreteColleague) * * 模式的UML类图 * * 1.同事(Colleague) : Colleague.java public interface Colleague{ public void giveMess(String [] mess); public void receiverMess(String mess); public void setName(String name); public String getName(); } 注:本问题中,只需要一个具体中介者,我们并不需要一个中介者(Mediator)接口 。 * * 2.具体中介者(Mediator) : ConcreteMediator.java public class ConcreteMediator{ ColleagueA colleagueA; ColleagueB colleagueB; Co
您可能关注的文档
最近下载
- 现代饭店管理(课件).doc VIP
- 2024-2025学年广东省深圳市龙岗区六年级(上)期末语文试卷.pdf VIP
- 2025-2026学年内蒙古乌兰察布市初中联盟校八年级(上)期末数学试卷(含答案).pdf VIP
- (一模)哈三中2025届高三第一次模拟考试 化学试题(含答案).pdf
- Yamaha 雅马哈 乐器音响 PSR-E383 PSR-EW320 YPT-380 YPT-W320 Reference Manual 用户手册.pdf
- 医患沟通话术集锦.pdf VIP
- 2025年江苏常州初中学业水平考试英语试卷试题(含答案详解).docx VIP
- (一模)2026年合肥市高三第一次教学质量检测英语试卷(含答案)+听力音频+听力原文.docx
- 2023年山东泰安初中学业水平考试生物试卷真题(精校版).docx VIP
- 2024年山东青岛初中学业水平考试生物卷试题真题(精校打印版).pdf VIP
原创力文档

文档评论(0)