1、中介者模式主要由这四个角色组成, 抽象中介者、具体中介者、 抽象同事类和具体同事类。
2、抽象中介者:定义了同事对象到中介者对象之间的接口。具体中介者: 实现抽象中介者的方法,它需要知道所有的具体同事类,同时需要从具体的同事类那里接收信息,并且向具体的同事类发送信息。
3、抽象同事类: 定义了中介者对象的接口,它只知道中介者而不知道其他的同事对象。具体同事类 : 每个具体同事类都只需要知道自己的行为即可,但是他们都需要认识中介者。
4、中介者模式优点:灵活性高,因为将同事类进行了解耦,使其不必有关联性;降低了类的复杂度,将一对多转化成了一对一。中介者模式缺点:中介者使用过多,会使系统变得复杂难以维护。
5、使用场景:通过一个中间类来封装多个类中的行为,而又不想生成太多的子类。注意事项:若不明确各个类的职责,那么就不要进行使用!