天天看点

设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用

中介者模式

定义:

一个封装一组对象如何交互的对象

通过使对象确定地相互引用促进松散耦合,并允许独立地改变它们的交互

类型:行为型

适用场景:

系统中对象之间存在复杂的引用关系,产生的相互依赖关系结构混乱且难以理解

交互的公共行为,如果需要改变行为则可以增加新的中介者类

优点:

将一对多转化成了一对一、降低了程序复杂度

类之间解耦

缺点:

中介者过多,导致系统复杂

相关设计模式:

中介者模式和观察者模式

Coding:

 创建类StudyGroup(相当于一个中介者)

设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用

创建User类

设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用

创建Test类

设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用

 当前的UML类图

设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用

 在JDK中的应用:

类Timer,我们可以理解到timer就是一个中介者里面的方法sched()中传入的task对象就是我们之前传入的User对象一样。

设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用
设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用
设计模式深入浅出--22.中介者模式简单实例及其在JDK中的应用

继续阅读