异常处理机制可理解为哪一种行为模式()A、观察者(Observer)模式B、迭代器(Iterator)模式C、职责链(Chain of Responsibility)模式D、策略(Strategy)模式

题目

异常处理机制可理解为哪一种行为模式()

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

第1题:

以下关于状态(State)模式和策略(Strategy)模式的叙述中,说法错误的是(48)。

A.对于客户程序而言,State模式比Strategy模式更透明

B.Strategy模式用来处理算法变化,State模式用来处理状态变化

C.State模式的对象变化频率比Strategy模式的对象高

D.State模式的“状态”是在对象外部,Strategy模式的“策略”是在对象内部


正确答案:D
解析:State(状态)模式的设计意图是:允许一个对象在其,内部状态改变时变更它的行为。而Strategy(策略)模式的设计意图是:定义一系列的算法,把它们一个一个地封装起来,并且使它们可相互替换。可见,Strategy模式用来处理算法变化,而State模式则是处理状态变化。strategy模式在概念结构上与state模式非常相似,但它们各自的目的不同。区分这两个模式的关键是看行为是由状态驱动还是由一组算法驱动。通常,State模式的“状态”是在对象内部的,Strategy模式的“策略”可以在对象外部。Strategy模式中,算法是否变化完全是由客户程序开始决定的,而且往往一次只能选择一种算法,不存在算法中途发生变化的情况。而State模式如其定义中所言,在它的生命周期中随时存在着状态的转变和行为的更改,而且状态变化是一个线形的整体。对于客户程序而言,这种状态变化往往是透明的。

第2题:

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

A.命令( Command)

B.责任链(Chain of Responsibility)

C.观察者( Observer)

D.迭代器(Iterator)


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

第3题:

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

A.备忘录(Memento)

B.策略(strategy)

C.状态(State)

D.观察者(Observer)(47)


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

第4题:

(45)设计模式将一个请求封装为一个对象,从而使得可以用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。

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

答案:A
解析:
命令模式将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作。

第5题:

回调(Callback)函数是面向过程的程序设计语言中常用的一种机制,而设计模式中的(4)模式就是回调机制的一个面向对象的替代品。该模式的意图是(5)。

A.Strategy(策略)

B.Adapter(适配器)

C.Command(命令)

D.Observer(观察者)


正确答案:C
解析:面向过程语言中的回调(callback)函数是指函数先在某处注册,而它将在稍后某个需要的时候被调用。它实际上是一种参数化机制。Command模式是一种对象行为型模式。Command模式的其中一种应用场合就是抽象出待执行的动作以参数化某种对象,该模式实际上是回调机制的一个面向对象的替代品。这个模式的设计意图是:将一个请求封装为一个对象,从而使用户可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。Strategy模式也是一种对象行为型模式,其设计意图是定义一系列的算法,把它们一个一个地封装起来,并且使它们可相互替换。这个模式使得算法可独立于使用它的客户而变化。通常当存在以下情况时使用Strategy模式:(1)许多相关的类仅仅是行为有异:(2)需要使用一个算法的不同变体;(3)算法使用客户不应该知道的数据,可使用Strategy模式避免暴露复杂的、与算法相关的数据结构;(4)一个类定义了多种行为,并且这些行为在这个类的操作中以多个条件语句的形式出现。Adapter模式是一种类对象结构型模式。通过将一个的类的接口转换成客户希望的另外一个接口,Adapter模式使原本由于接口不兼容而不能在一起工作的那些类可以一起工作。Observer模式是另外一种对象行为型模式,其设计意图是定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。当存在以下情况时可以使用Observer模式:(1)一个抽象模型有两个方面,其中一个方面依赖于另一个方面,将两者封装在独立的对象中使它们可以各自独立地改变和复用;(2)对一个对象的改变需要同时改变其他对象,而不知道具体有多少对象有待改变;(3)一个对象必须通知其他对象,而它又不能假定其他对象是谁。

第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题:

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

A.命令(Command)

B.责任链(Chain of Responsibility)

C.观察者(Observer)

D.策略(Strategy)


正确答案:D

第8题:

回调(Callback)函数是面向过程的程序设计语言中常用的一种机制。在设计模式中,(45)模式就是回调机制的一个面向对象的替代品。

A.Strategy(策略)

B.Adapter(适配器)

C.Command(命令)

D.Observer(观察者)


正确答案:C
解析:在面向过程的程序设计语言中,回调(Callback)函数是指函数先在某处注册,而它将在稍后某个需要的时候被调用。它实际上是一种参数化机制。Command(命令)模式的设计意图就是“将一个请求封装为一个对象,从而使用户可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作”。其中一种应用场合就是抽象出待执行的动作以参数化某种对象,可用过程语言中的回调(Callback)函数表达这种参数化机制。 Command模式是回调机制的一个面向对象的替代品。Observer(观察者)模式的设计意图就是“定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新”。Strategy(策略)模式使得算法可独立于使用它的客户而变化。Adapter(适配器)模式是一种类对象结构型模式。通过将一个的类的接口转换成客户希望的另外一个接口。Adapter模式使原本由于接口不兼容而不能一起工作的那些类可以一起工作。

第9题:

以下设计模式中,(请作答此空)模式使多个对象都有机会处理请求。将这些对象连成一条链。并沿着这条链传递该请求。直到有一个对象处理为止。从而避免请求的发送者和接收者之间的耦合关系。( )模式提供一种方法顺序访问一个聚合对象中的各个元素。且不需要暴露该对象的内部表示。这两种模式均为( )

A.责任链(Chain of Responsibility)
B.解释器(Interpreter)
C.命令(Command)
D.迭代器(Iterator)

答案:A
解析:
责任链模式:通过给多个对象处理请求的机会,减少请求的发送者与接受者之间的耦合。将接收对象链接起来,在链中传递请求,直到有一个对象处理这个请求。迭代器模式:提供一种方法来顺序访问一个聚合对象中的各个元素,而不需要暴露该对象的内部表示命令模式:将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作解释器模式:给定一种语言,定义它的文法表示,并定义一个解释器,该解释器用来根据文法表示来解释语言中的句子责任链模式和迭代器模式都是行为型对象模式

第10题:

( )设计模式将一个请求封装为一个对象,从而使得可以用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。

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

答案:A
解析:
命令模式将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作。

更多相关问题