封装分布于多个类之间的行为的模式是()A、观察者(Observer)模式B、迭代器(Iterator)模式C、访问者(Visitor)模式D、策略(Strategy)模式

题目

封装分布于多个类之间的行为的模式是()

  • A、观察者(Observer)模式
  • B、迭代器(Iterator)模式
  • C、访问者(Visitor)模式
  • D、策略(Strategy)模式
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

(46)

A. 桥接

B. 策略

C. 抽象工厂

D. 观察者

(47)

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

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

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

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


正确答案:D,B

第2题:

● 下列UML类图表示的是 (46) 设计模式。该设计模式中, (47) 。

(46)A. 备忘录(Memento)

B. 策略(Strategy)

C. 状态(State)

D. 观察者(Observer)

(47)A. 一个Subject对象可对应多个Observer对象

B. Subject只能有一个ConcreteSubject子类

C. Observer只能有一个ConcreteObserver子类

D. 一个Subject对象必须至少对应一个Observer对象


正确答案:D,A

第3题:

分布性问题强调系统或系统中构件在一个分布的环境中相互通信的方式。解决分布性问题最普遍的体系结构模式是(),CORBA是其一个范例。()A. Observer模式 B.Iterator模式 C. Proxy模式 D. Builder模式


正确答案:C
    分布性问题强调系统或系统中构件在一个分布的环境中相互通信的方式。分布性问题有两个元素:①实体间连接方式;②实体间通信的特性。解决分布性问题最普通的体系结构模式是代理(Proxy)模式。CORBA是代理模式的一个范例。

第4题:

行为型模式是对在不同对象之间划分责任和算法的抽象化,它可以分为类行为模式和对象行为模式。下列行为型模式中属于类行为模式的是 ( )。

A.职责链模式
B.命令模式
C.迭代器模式
D.解释器模式

答案:D
解析:
属于类行为模式的只有:创建型模式中的工厂方法;结构型模式中的适配器模式;行为型模式中的解释器模式与模板方法模式。

第5题:

设计模式允许一个对象在其状态改变时,通知依赖它的所有对象。该设计模式的类图如下图,其中, (68)在其状态发生改变时,向它的各个观察者发出通知。

A.命令( Command)

B.责任链(Chain of Responsibility)

C.观察者( Observer)

D.迭代器(Iterator)


正确答案:C
观察者模式的意图是:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。在观察者模式类图中,Subject是被观察对象,了解其多个观察者,任意数量的观察者可以观察一个对象,提供一个接口用来绑定以及分离观察者对象。ConcreteSubject是具体被观察对象,存储具体观察者ConcreteObserver有兴趣的状态。当其状态改变时,发送一个通知给其所有的观察者对象。Observer是观察者,定义一个更新接口,在一个被观察对象改变时应被通知。ConcreteObserver是具体观察者,维护一个对ConcreteSubject对象的引用。

第6题:

● (40) 设计模式允许一个对象在其状态改变时,通知依赖它的所有对象。该设计模式的类图如下图,其中, (41)在其状态发生改变时,向它的各个观察者发出通知。

(40)

A.命令( Command)

B.责任链(Chain of Responsibility)

C.观察者( Observer)

D.迭代器(Iterator)

(41)

A.Subject

B.ConcreteSubject

C. Observer

D.ConcreteObserver


正确答案:C,B

第7题:

图7-6UML类图所描绘的设计模式中的(43)模式。

A.Iterator(迭代器)

B.Decorator(装饰器)

C.Interpreter(解释器)

D.Adapter(适配器)


正确答案:C
解析:图7-6 UML类图所描绘的设计模式中的Interpreter(解释器)模式。其设计意图是:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。

第8题:

下列UML类图表示的是( )设计模式。该设计模式中,( )。

A.备忘录(Memento)

B.策略(strategy)

C.状态(State)

D.观察者(Observer)(47)


正确答案:D
解析:试题46:观察者模式(ObserVer)完美地将观察者和被观察的对象分离开。举个例子,用户界面可以作为一个观察者,业务数据是被观察者,用户界面观察业务数据的变化,发现数据变化后,就显示在界面上。面向对象设计的一个原则是:系统中的每个类将重点放在某一个功能上,而不是其他方面。一个对象只做一件事情,并且将它做好。观察者模式在模块之间划定了清晰的界限,提高了应用程序的可维护性和重用性。试题47:从图中可以看出,Observer对象与Subject是1对多的关系,且至少包含一个Subject对象。

第9题:

下面的UML类图描绘的是( )设计模式。关于该设计模式的叙述中,错误的是(请作答此空)。

A.该设计模式中的Observer需要维护至少一个Subject对象
B.该设计模式中的ConcreteObserver可以绕过Subject及其子类的封装
C.该设计模式中一个Subject对象需要维护多个Observer对象
D.该设计模式中Subject需要通知Observer对象其自身的状态变化

答案:B
解析:
本题主要考查设计模式的相关知识。
桥接模式将抽象部分与实现部分分离,使得它们两部分可以独立地变化。
策略模式定义一系列的算法,将每一个算法封装起来,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化。
抽象工厂提供了一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。抽象工厂模式又称为Kit模式,属于对象创建型模式。
观察者模式定义对象间的一种一对多依赖关系,使得每当一个对象改变状态,则其相关依赖对象皆得到通知并被自动更新。
从本题给出的图我们可以判断是观察者模式,其中被观察对象(Subject),具体被观察对象(ConcreteSubject),观察者(Observer)及具体观察者(ConcreteObserver)。在本设计模式中,Observer需要维护至少一个Subject对象,一个Subject对象需要维护多个Observer对象,另外Subject需要通知Observer对象其自身的状态变化。

第10题:

以下属于结构型模式的是()。

  • A、代理(Proxy)模式
  • B、合成(Composite)模式
  • C、命令(Command)模式
  • D、观察者(Observer)模式

正确答案:A,B

更多相关问题