中介者是一种行为设计模式, 让程序组件通过特殊的中介者对象进行间接沟通, 达到减少组件之间依赖关系的目的。
中介者能使得程序更易于修改和扩展, 而且能更方便地对独立的组件进行复用, 因为它们不再依赖于很多其他的类。
复杂度:
流行度:
使用示例: 中介者模式在 Java 代码中最常用于帮助程序 GUI 组件之间的通信。 在 MVC 模式中, 控制器是中介者的同义词。
下面是核心 Java 程序库中该模式的一些示例:
笔记程序
本例展示了如何将许多 GUI 元素组织起来, 使其在中介者的帮助下无需相互依赖就能合作。
components: Colleague classes
components/Component.java
components/AddButton.java
components/DeleteButton.java
components/Filter.java
components/List.java
components/SaveButton.java
components/TextBox.java
components/Title.java
mediator
mediator/Mediator.java: 定义通用的中介者接口
mediator/Editor.java: 具体中介者
mediator/Note.java: 笔记类
Demo.java: 初始化代码
OutputDemo.png: 执行结果