Mediator模式

调停者模式(Mediator) 属于对象的行为模式。
1. 定义
调停者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显作用。从而使他们可以松散偶合。当某些对象之间的作用发生改变时,不会立即影响其他的一些对象之间的作用。保证这些作用可以彼此独立的变化。调停者模式将多对多的相互作用转化为一对多的相互作用。调停者模式将对象的行为和协作抽象化,把对象在小尺度的行为上与其他对象的相互作用分开处理。
2. 使用的原因
当对象之间的交互操作很多,且每个对象的行为操作都依赖彼此时,为防止在修改一个对象的行为时,同时涉及到修改很多其他对象的行为,可采用调停者模式,来解决紧耦合问题.
该模式将对象之间的多对多关系变成一对多关系,调停者对象将系统从网状结构变成以调停者为中心的星形结构,达到降低系统的复杂性,提高可扩展性的作用.
3. 适用的情况举例
eg1. WTO组织:它是一个协调组织,它将各贸易区自行进行的相互协调的强耦合变成了松散合;
eg2. 4个MM打麻将,相互之间谁应该给谁多少钱算不清楚了,某人担任调停者,各MM按照各自的筹码数算钱,赚了钱的从调停者这里拿,赔了钱的也付给调停者;
eg3. 租赁中介:很多人有出租房子的需求,也有不少人需要租房,租赁中介在其中担任了调停者的角色, 疏通了两者之间的复杂关系,也方便了两者。
4. 类图结构及说明
1)示意性类图如下所示:
2)类说明
i)Mediator:抽象调停者角色,它定义出同事对象到调停者对象得接口,这个角色一般由Java抽象类实现
ii)ConcreteMediator:具体调停者模式,从抽象调停者继承,实现了超类所声明的事件方法,它从具体同事对象接收消息,向具体同事对象发出命令.
iii)Colleague:抽象同事类角色,它定义了调停者同事对象的接口,它只知道调停者而不知道其余同事对象.
iv)colleague1、colleague2:具体同事类角色,从抽象同事类继承而来,每个具体同事类都知道本身在小范围内的行为,而不知道它在大范围内的目的.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是常见的Java设计模式: 1. 工厂模式(Factory Pattern) 2. 单例模式(Singleton Pattern) 3. 建造者模式(Builder Pattern) 4. 原型模式(Prototype Pattern) 5. 适配器模式(Adapter Pattern) 6. 桥接模式(Bridge Pattern) 7. 组合模式(Composite Pattern) 8. 装饰器模式(Decorator Pattern) 9. 外观模式(Facade Pattern) 10. 享元模式(Flyweight Pattern) 11. 代理模式(Proxy Pattern) 12. 观察者模式(Observer Pattern) 13. 中介者模式Mediator Pattern) 14. 命令模式(Command Pattern) 15. 访问者模式(Visitor Pattern) 16. 解释器模式(Interpreter Pattern) 17. 迭代器模式(Iterator Pattern) 18. 策略模式(Strategy Pattern) 19. 模板方法模式(Template Method Pattern) 20. 职责链模式(Chain of Responsibility Pattern) 21. State 模式(状态模式) 22. Memento 模式(备忘录模式) 23. Builder 模式(建造者模式) 24. Composite 模式(组合模式) 25. Command 模式(命令模式) 26. Adapter 模式(适配器模式) 27. Proxy 模式(代理模式) 28. Bridge 模式(桥接模式) 29. Decorator 模式(装饰器模式) 30. Facade 模式(外观模式) 31. Flyweight 模式(享元模式) 32. Interpreter 模式(解释器模式) 33. Iterator 模式(迭代器模式) 34. Mediator 模式(中介者模式) 35. Memento 模式(备忘录模式) 36. Observer 模式(观察者模式) 37. Prototype 模式(原型模式) 38. Singleton 模式(单例模式) 39. Strategy 模式(策略模式) 40. Template Method 模式(模板方法模式) 41. Visitor 模式(访问者模式

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值