设计模式允许一个对象在其状态改变时,通知依赖它的所有对象。该设计模式的类图如下图,其中, (68)在其状态发生改变时,向它的各个观察者发出通知。A.命令( Command)B.责任链(Chain of Responsibility)C.观察者( Observer)D.迭代器(Iterator)

题目

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

A.命令( Command)

B.责任链(Chain of Responsibility)

C.观察者( Observer)

D.迭代器(Iterator)


相似考题
更多“设计模式允许一个对象在其状态改变时,通知依赖它的所有对象。该设计模式的类图如下图,其中,(6 ”相关问题
  • 第1题:

    设计模式允许一个对象在其内部状态改变时改变它的行为。下图为这种设计模式的类图,已知类State为抽象类,则类(44)的实例代表了Context对象的状态。

    A.单件(Singleton)

    B.桥接(Bridge)

    C.组合(Composite)

    D.状态(State)


    正确答案:D

  • 第2题:

    (请作答此空)设计模式允许一个对象在其内部状态改变时改变它的行为。下图为这种设计模式的类图,已知类State为抽象类,则类( )的实例代表Context对象的状态。

    A.单件(Singleton)
    B.桥接(Bridge)
    C.组合(Composite)
    D.状态(State)

    答案:D
    解析:
    本题考查面向对象中的设计模式该类图描述的是状态设计模式State的子类 ConcreteStateA和ConcreteStateB都表示Context对象在运行过程中可能转换的状态

  • 第3题:

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

    A.观察者

    B.单实例

    C.工厂模式

    D.策略


    状态(State)

  • 第4题:

    下面的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对象其自身的状态变化。

  • 第5题:

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

    A.单实例

    B.工厂模式

    C.观察者

    D.策略


    B