[Design pattern]: 设计模式相关系列
介绍
概念: 用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
应用场景: 不同功能的模块之间调用关系复杂,耦合度高,不利于修改时使用。
好处: 降低耦合,模块独立。
坏处: 中介者业务复杂,不易维护。
CODE
定义模块抽象类
1 | package note.com.mediator; |
模块具体实现
1 | package note.com.mediator; |
1 | package note.com.mediator; |
1 | package note.com.mediator; |
中介者,定义模块之间的调用
1 | package note.com.mediator; |
测试类
1 | package note.com.mediator; |
结果
1 | 政府没钱 |
由此可以看出例子中的三个模块之间的调用关系由Mediator来控制,使三个模块更专心于自己的功能。
注意:小心设计成死循环。