一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用()模式,用一个中介对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,。而且可以独立地改变它们之间的交互。此模式与()模式是相互竞争的模式,主要差别是:前者的中介对象封装了其它对象间的通信,而后者通过引入其它对象来分布通信。A、解释器(Interpreter)B、策略(Strategy)C、中介者(Mediator)D、观察者(Observer)

题目

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用()模式,用一个中介对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,。而且可以独立地改变它们之间的交互。此模式与()模式是相互竞争的模式,主要差别是:前者的中介对象封装了其它对象间的通信,而后者通过引入其它对象来分布通信。

  • A、解释器(Interpreter)
  • B、策略(Strategy)
  • C、中介者(Mediator)
  • D、观察者(Observer)
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

观察者(Observer)模式适用于( )。

A.访问一个聚合对象的内容而无须暴露它的内部表示*

B.减少多个对象或类之间的通信复杂性

C.将对象的状态恢复到先前的状态

D.一对多对象依赖关系,当一个对象修改后,依赖它的对象都自动得到通知


正确答案:D

第2题:

模式定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换,使得算法可以独立于使用它们的客户而变化。以下( 45 )情况适合选用该模式。 ①一个客户需要使用一组相关对象 ②一个对象的改变需要改变其它对象 ? 需要使用一个算法的不用变体 ④许多相关的类仅仅是行为有异

A.命令(Command)

B.责任链(Chain of Responsibility)

C.观察者(Observer)

D.策略(Strategy)


正确答案:D

第3题:

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用()模式,用一个中介对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,。而且可以独立地改变它们之间的交互。此模式与()模式是相互竞争的模式,主要差别是:前者的中介对象封装了其它对象间的通信,而后者通过引入其它对象来分布通信。

A.解释器(Interpreter)

B.策略(Strategy)

C.中介者(Mediator)

D.观察者(Observer)


参考答案:C, D

第4题:

结构型设计模式涉及如何组合类和对象以获得更大的结构,分为结构型类模式和 结构型对象模式。其中,结构型类模式采用继承机制来组合接口或实现,而结构型对象模式描述了如何对一些对象进行组合,从而实现新功能的一些方法。以下(48)模式是结构型对象模式。

A.中介者 (Mediator)
B.构建器(Builder)
C.解释器(Interpreter)
D.组合(Composite)

答案:D
解析:
结构型模式是描述如何将类对象结合在一起,形成一个更大的结构,结构模式描述两种不同的东西:类与类的实例。故可以分为类结构模式和对象结构模式。在GoF设计模式中,结构型模式有: 1.适配器模式 Adapter 2.桥接模式 Bridge 3.组合模式 Composite 4.装饰模式Decorator 5.外观模式 Facade 6.享元模式 Flyweight 7.代理模式 Proxy

第5题:

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难 以理解。采用 (43) 模式,甩一个中介对象来封装一系列的对象交互,从而使各对 象不需要显式地相互引用,使其耦合松散,而且可以独立地改变它们之间的交互。此模 式与 (44) 模式是相互竞争的模式,主要差别是:前者的中介对象封装了其他对象 间的通信,而后者通过引入其他对象来分布通信。

A.解释器(intepeter)

B.策略(Strategy)

C.中介者(Mediator)

D.观察者(Observer)


正确答案:C
本题考查设计模式的基本概念。解释器(Interpreter)设计模式是给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。策略(Strategy)设计模式定义一系列算法,把它们一个个封装起来,并且使它们可相互替换。这一模式使得算法可独立于它的客户而变化。中介者(Mediator)用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互,观察者(Observer)模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。以上四种设计模式都是行为设计模式。行为设计模式大多注重封装变化,当一个程序的某个方面的特征经常发生改变时,这些模式就定义一个封装这个方面的对象。这样,当该程序的其他部分依赖于这个方面时,它们都可以与此对象协作。这些模式通常定义一个抽象类来描述这些封装变化的对象,并且通常该模式依据这个对象来命名。例如:一个Strategy对象封装一个算法,一个Mediator对象封装对象间的协议。Mediator和Observer是相互竞争的模式,之间的差别是:Observer通过引入Observer和Subject对象来分布通信,而Mediator对象则封装了其他对象间的通信。

第6题:

结构型设计模式涉及如何组合类和对象以获得更大的结构,分为结构型类模式和 结构型对象模式。其中,结构型类模式采用继承机制来组合接口或实现,而结构型对象模式描述了如何对一些对象进行组合,从而实现新功能的一些方法。以下( )模式是结构型对象模式。

A.中介者 (Mediator) B.构建器(Builder) C.解释器(Interpreter) D.组合(Composite)


正确答案:D

第7题:

对于如下所示的序列图所描述的场景,最适合于采用的设计模式是( );该模式适用的场合是( )。

A.Visitor B.Strategy C.Observer D.State A.对象的行为决定于它的状态,且必须在运行时刻根据状态改变它的行为 B.定义对象结构的类很少改变,但经常需要在此结构上定义新的操作 C.需要使用一个算法的不同变体 D.一个对象必须通知其它对象,而它又不能假定其它对象是谁


正确答案:A,B

第8题:

● 下面的UML类图描绘的是 (46) 设计模式。关于该设计模式的叙述中,错误的是 (47) 。

(46)

A. 桥接

B. 策略

C. 抽象工厂

D. 观察者

(47)

A. 该设计模式中的Observer 需要维护至少一个Subject对象

B. 该设计模式中的ConcreteObserver 可以绕过 Subject及其子类的封装

C. 该设计模式中一个Subject对象需要维护多个Observer 对象

D. 该设计模式中Subject需要通知 Observer 对象其自身的状态变化


正确答案:D,B

第9题:

行为型设计模式描述类或对象怎样交互和怎样分配职责,涉及算法和对象职责的分配,其中()模式将一个语言的文法表示为一个类层次,每个类定义一个解释操作,来解释语言中的句子

A.解释器
B.模版方法
C.中介者
D.责任链

答案:A
解析:
解释器模式定义一个语言的文法,并且建立一个解释器来解释该语言中的句子,这里的“语言”是指使用规定格式和语法的代码。解释器模式是一种行为型模式。

第10题:

(请作答此空)模式定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换,使得算法可以独立于使用它们的客户而变化。以下( )情况适合选用该模式。①一个客户需要使用一组相关对象②一个对象的改变需要改变其他对象③需要使用一个算法的不同变体④许多相关的类仅仅是行为有异

A.命令(Command)
B.责任链(ChainofResponsibility)
C.观察者(Observer)
D.策略(Strategy)

答案:D
解析:
命令模式:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化。责任链:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。策略模式:定义一系列的算法,把每一个算法封装起来,并且是它们可互相替换。本模式使得算法可独立于使用它的客户而变化。

更多相关问题