GoF定义:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
这是消息传递中经常使用的一种模式,各个消息的发送者之间并不相互了解,但是它们之间是可以相互通讯的,就是通过一个消息转发中心来实现。
也好比邮件或者快递包裹的发送。
比如我需要邮寄一份邮件,我需要填写相关内容:接收者以及接收的内容,到邮局(注册)发送就可以了。
代码:
输出:
第一次发送:
发送者C接收到了消息:这是发送者A发来的消息。发送者:发送者A
发送者D接收到了消息:这是发送者A发来的消息。发送者:发送者A
第二次发送:
发送者B接收到了消息:这是发送者C发来的消息。发送者:发送者C
这个设计模式在稍微大一点的应用系统开发中很实用。