设计模式的艺术 第二十章中介者模式练习(设计一套图形界面类库,包含若干预定义的窗格(Pane)对象,如 TextPane、ListPane 等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口(Window)组成,窗口协调窗格之间的行为)
Sunny 软件公司欲开发一套图形界面类库。该类库需要包含若干预定义的空格(Pane)对象,例如 TextPane、ListPane、GraphicPane 等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口(Window)组成,窗口需要协调窗格之间的行为。试采用中介者模式设计该系统。
一、类结构图
二、典型实现代码
中介者类:抽象中介者类
复制代码
抽象窗格类:抽象同事类
复制代码
窗口中介者类:具体中介者类
复制代码
文本窗格类:具体同事类
复制代码
列表窗格类:具体同事类
复制代码
图形窗格类:具体同事类
复制代码
客户端代码:
复制代码
编译并运行程序,输出如下结果:
复制代码
版权声明: 本文为 InfoQ 作者【代廉洁】的原创文章。
原文链接:【http://xie.infoq.cn/article/8b75ecadd2ae026bc053fb092】。文章转载请联系作者。
评论