( )设计模式最适合用于发布/订阅消息模型,即当订阅者注册一个主题后,此主题有新消息到来时订阅者就会收到通知。

admin2019-07-12  29

问题 (    )设计模式最适合用于发布/订阅消息模型,即当订阅者注册一个主题后,此主题有新消息到来时订阅者就会收到通知。

选项 A、适配器(Adapter)
B、通知(Notitier)
C、观察者(Observer)
D、状态(State)

答案C

解析 本题考查设计模式的基本概念。每种设计模式都有特定的意图和适用情况。
适配器(Adapter)将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。类适配使用多重继承对一个接口与另一个接口进行匹配;对象适配器依赖于对象组合。适用于:想使用一个已经存在的类,而它的接口不符合要求:想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。(仅适用于对象Adapter)想使用一个已经存在的子类,但是不可能对每一个都进行子类化以匹配他们的接口。对象适配器可以适配它的父类接口。
    观察者(Observer)模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。适用于:当一个抽象模型有两个方面,其中一个方面依赖于另一个方面,将这两者封装在独立对象中以使它们可以各自独立地改变和复用;当对一个对象的改变需要同时改变其他对象,而不知道具体有多少对象有待改变时;当一个对象必须通知其他对象,而它又不能假定其他对象是谁,即:不希望这些对象是紧耦合的。此模式最适合用于发布/订阅消息模型由订阅者订阅消息主题,发布者一定有此主题消息发布,所有订阅者就会自动收到通知。
    状态(State)允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。适用于:一个对象的行为决定于它的状态,并且它必须在运行时刻根据状态改变它的行为;一个操作中含有庞大的多分支的条件语句,且这些分支依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。通常,有多个操作包含这一相同的条件结构。State模式将每一个条件分支放入一个独立的类中。这使得开发者可以根据对象自身的情况将对象的状态作为一个对象,这一对象可以不依赖于其他对象而独立变化。
转载请注明原文地址:https://kaotiyun.com/show/OBCZ777K
0

相关试题推荐
最新回复(0)