问题
单项选择题
博学公司欲开发一套窗体图形界面类库。该类库需要包含若干预定义的窗格(Pane)对象,例如TextPane、ListPane等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口组成,并需要协调窗格之间的行为。基于该类库,在不引用窗格的前提下实现窗格之间的协作,应用开发者应采用()最为合适。
A.备忘录模式
B.中介者模式
C.访问者模式
D.迭代器模式
答案
参考答案:B
解析:本题主要考查设计模式的理解与应用。根据题干描述,应用系统需要使用博学公司开发的类库,该应用系统是一组窗格组成,应用需要协调窗格之间的行为,并且不能引用窗格自身,在这种要求下,对比4个候选项,其中中介者模式用一个中介对象封装一系列的对象交互。中介者使用各对象不需要显式的相互调用,从而使其耦合松散。可以看出该模式最符合需求。