中级系统集成项目管理工程师

关于观察者模式说法正确的是?()A、观察者(Observer)模式,也叫发布/订阅(Publish/SubscribE.模式。B、是MVC(模型-视图-控制器)模式的重要组成部分。C、复用性强。D、对象之间实名通信。

题目

关于观察者模式说法正确的是?()

  • A、观察者(Observer)模式,也叫发布/订阅(Publish/SubscribE.模式。
  • B、是MVC(模型-视图-控制器)模式的重要组成部分。
  • C、复用性强。
  • D、对象之间实名通信。
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

A.桥接
B.策略
C.抽象工厂
D.观察者

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

第2题:

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

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

正确答案:A,B

第3题:

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

(56)

A.桥接

B.策略

C.抽象工厂 观察者


正确答案:D
解析:观察者(Observer)模式要解决的问题为:建立一个一(Subject)对多(Observer)的依赖关系,并且做到当“一”变化的时候,依赖这个“一”的多也能够同步改变。例如对同一组数据进行统计分析时候,可能希望能够提供多种形式的表示(例如以表格进行统计显示、柱状图统计显示、百分比统计显示等),这些表示都依赖于同一组数据;当数据改变的时候,所有的统计的显示都能够同时改变。因为观察者是依赖于目标对象的,Observer类可以有多个(ConcreteObserver子类;每个子类都依赖于某个目标对象的子类(ConcreteSubject,所以说Observer需要维护至少一个Subject对象。而(ConcreteObserver对象维护一个指向(ConcreteSubject对象的引用,所以不能绕过Subject子类的封装。

第4题:

在观察者模式中,表述错误的是()

  • A、观察者角色的更新是被动的
  • B、被观察者可以通知观察者进行更新
  • C、观察者可以改变被观察者的状态,再由被观察者通知所有观察者依据被观察者的状态进行。
  • D、以上表述全部错误

正确答案:C

第5题:

下列模式中,属于行为模式的是()

  • A、工厂模式
  • B、观察者
  • C、适配器
  • D、以上都是

正确答案:B

第6题:

下图所示为观察者(Obserrver)模式的抽象示意图,其中(请作答此空)知道其观察者,可以有任何多个观察者观察同一个目标;提供住处和删除观察者对象的接口。此模式体现的最主要的特征是( )。

A.Subject
B.Observer
C.ConcreteSubject
D.ConcreteObserver

答案:C
解析:
观察者将自己注册到事件,那么具体的事件就知道了自己的观察者观察者和事件都有自己的抽象,当实现具体的观察者和事件的时候都要实现相应接口,所以对扩展是开放的

第7题:

属行为型设计模式的是()

  • A、组合模式
  • B、工厂方法模式
  • C、观察者模式

正确答案:C

第8题:

下面关于观察者模式描述不正确的是( )。

A.观察者模式实现了表示层和数据层的分离B.观察者模式定义了稳定的更新消息传递机制C.在观察者模式中,相同的数据层不可以有不同的表示层D.观察者模式定义了对象之间的一种一对多的依赖关系


正确答案:C

第9题:

以下属于行为对象模式的是()

  • A、模板(Template Method)模式
  • B、迭代器(Iterator)模式
  • C、命令(Command)模式
  • D、观察者(Observer)模式

正确答案:A,B,C,D

第10题:

关于观察者模式说法错误的是?()

  • A、也叫发布模式
  • B、也叫订阅模式
  • C、也叫装饰模式
  • D、是MVC模式重要组成部分

正确答案:C

更多相关问题