一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用( )模式,用一个特定对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,而且可以独立地改变它们之间的交互。 A. 解释器(Interpreter)B. 策略(Strategy)C. 中介者(Mediator)D. 迭代器(Iterator)

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用( )模式,用一个特定对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,而且可以独立地改变它们之间的交互。


A. 解释器(Interpreter)
B. 策略(Strategy)
C. 中介者(Mediator)
D. 迭代器(Iterator)

参考解析

解析:解释器模式属于类的行为模式,描述了如何为语言定义一个文法,如何在该语言中表示一个句子,以及如何解释这些句子,这里的“语言”是使用规定格式和语法的代码。

策略模式是一种对象的行为型模式,定义一系列算法,并将每个算法封装起来,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化,其目的是将行为和环境分隔,当出现新的行为时,只需要实现新的策略类。

中介者模式是一种对象的行为行模式,通过一个中介对象来封装一系列的对象交互。中介者使得各对象不需要现实地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者对象的存在保证了对象结构上的稳定,也就说说系统的结构不会因为新对象的引入带来大量的修改工作。

迭代器模式是一种对象的行为型模式,提供了一种方法来访问聚合对象,而不用暴露这个对象的内部表示。迭代器模式支持以不同的方式遍历一个聚合对象。

相关考题:

UMI图中,一张交互图显示一个交互。由一组对象及其之间的关系组成,包含它们之间可能传递的消息。()不是交互图。 A.序列图B.对象图C.通信图D.时序图

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用()模式,用一个中介对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,。而且可以独立地改变它们之间的交互。此模式与()模式是相互竞争的模式,主要差别是:前者的中介对象封装了其它对象间的通信,而后者通过引入其它对象来分布通信。 A.解释器(Interpreter)B.策略(Strategy)C.中介者(Mediator)D.观察者(Observer)

阅读以下关于系统间交互的叙述,回答问题1和问题2。某软件公司拟开发一套基于局域网的分布式系统,该系统由分布于某企业各部门的多个子系统构成。在该企业的日常运做中,各子系统之间要经常基于企业局域网进行交互。实现各子系统之间的交互可以采用如下2种方式;(1)基于某种成熟的分布式软件体系结构(如EJB,CORBA,DCOM/COM+)来构建整个系统。现在主流的分布式软件体系结构都融合了面向对象技术,对分布式对象提供了很好的支持,可以利用这些体系结构支持分布式对象访问的通信机制(如RMI/IIOP, ORB,ORPC等)来实现各子系统之间的交互,其优点是实现相对简单且比较可靠。(2)首先分别实现各个子系统,然后利用底层通信协议(如TCP/IP)实现各子系统之间的交互,其优点是通信效率高且可控性好。虽然不同的分布式软件体系结构采用的具体实现方式不尽相同,但它们都支持客户端透明地访问分布式对象,即客户端可以像访问本地对象一样访问分布式对象。试用 200字以内文字,说明实现这种透明性的基本原理。

图5-6UML类图所示意的设计模式的意图是(47)。A.为特定的客户(或情况)提供特定系列的对象B.定义一系列的算法并将它们一个个封装起来,使它们可以相互替换C.将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示D.定义一个用于创建对象的接口,让子类决定实例化哪一个类

下列关于对象初始化的叙述中,正确的是A.定义对象的时候不能对对象进行初始化B.定义对象之后可以显式地调用构造函数进行初始化C.定义对象时将自动调用构造函数进行初始化D.在一个类中必须显式地定义构造函数实现初始化

下列叙述甲错误的是( )。A.面向对象的程序设计,通过消息来实现对象之间的相互关系B.面向对象的程序设计,是用对象模拟问题领域中的实体C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小D.在面向对象的程序设计中.各个对象之间相互依赖性

模式定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换,使得算法可以独立于使用它们的客户而变化。以下( 45 )情况适合选用该模式。 ①一个客户需要使用一组相关对象 ②一个对象的改变需要改变其它对象 ? 需要使用一个算法的不用变体 ④许多相关的类仅仅是行为有异A.命令(Command)B.责任链(Chain of Responsibility)C.观察者(Observer)D.策略(Strategy)

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用( )模式,用一个特定对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,而且可以独立地改变它们之间的交互。A.解释器(Interpreter) B.策略(Strategy) C.中介者(Mediator) D.迭代器(Iterator)

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难 以理解。采用 (43) 模式,甩一个中介对象来封装一系列的对象交互,从而使各对 象不需要显式地相互引用,使其耦合松散,而且可以独立地改变它们之间的交互。此模 式与 (44) 模式是相互竞争的模式,主要差别是:前者的中介对象封装了其他对象 间的通信,而后者通过引入其他对象来分布通信。A.解释器(intepeter)B.策略(Strategy)C.中介者(Mediator)D.观察者(Observer)

UML图中,一张交互图显示一个交互,由一组对象及其之间的关系组成,包含它 们之间可能传递的消息。 (45) 不是交互图。A.序列图B.对象图C.通信图D.时序图

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

下图是( )设计模式的类图,该设计模式的目的是(请作答此空),图中,ConcreteStrategy和Strategy之间是( )关系,Strategy和Context之间是( )关系。A.将一个类的接口转换为客户期望的另一种接口,使得原本不匹配的接口而无法合作的类可以一起工作B.定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。C.动态地给一个对象附加额外的职责,不必通过子类就能灵活地增加功能D.为一个对象提供代理以控制该对象的访问

按照设计模式的目的进行划分,现有的设计模式可以分为三类。其中创建型模式通过采用抽象类所定义的接口,封装了系统中对象如何创建、组合等信息,其代表有(9)模式等;(10)模式主要用于如何组合己有的类和对象以获得更大的结构,其代表有 Adapter 模式等;(11)模式主要用于对象之间的职责及其提供服务的分配方式,其代表有(12)模式等。【回答括号11】A.. 行为型B. 交互型C. 耦合性D. 关联型

以下意图哪个是用来描述SINGLETON(单件)?()A、将一个类的接口转换成客户希望的另外一个接口该模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作B、保证一个类仅有一个实例,并提供一个访问它的全局访问点C、定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化D、用一个中介对象来封装一系列的对象交互

UMI图中,一张交互图显示一个交互。由一组对象及其之间的关系组成,包含它们之间可能传递的消息。()不是交互图。A、序列图B、对象图C、通信图D、时序图

以下意图哪个是用来描述BRIDGE(桥接)?()A、提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类B、将抽象部分与它的实现部分分离,使它们都可以独立地变化C、将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示D、动态地给一个对象添加一些额外的职责

Decorator(装饰)模式的意图是:()。A、定义一系列的算法,把它们一个个的封装起来,并且使它们可相互替换B、为一个对象动态连接附加的职责C、你希望只拥有一个对象,但不用全局对象来控制对象的实例化D、在对象之间定义一种一对多的依赖关系,这样当一个对象的状态改变时,所有依赖于它的对象都将得到通知并自动更新

面向对象方法的开发原则不包括()A、对象由属性和方法组成B、对象可以按照其属性进行归类,类有一定的结构,父类和子类之间靠继承关系维系C、对象是一个被严格模块化的实体,其过程称为封装。在对象封装下,所有软件部件内部都没有明确的范围以及清楚的外部边界D、对象之间的联系主要是通过传递消息来实现的,而传递的方式是通过消息模式和方法所定义的操作过程来完成的

以下意图哪个是用来描述FACTORY METHOD(工厂方法)?()A、提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类B、表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作C、定义一个用于创建对象的接口,让子类决定实例化哪一个类。该模式使一个类的实例化延迟到其子类D、定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化

多选题一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。采用()模式,用一个中介对象来封装一系列的对象交互,从而使各对象不需要显式地相互引用,使其耦合松散,。而且可以独立地改变它们之间的交互。此模式与()模式是相互竞争的模式,主要差别是:前者的中介对象封装了其它对象间的通信,而后者通过引入其它对象来分布通信。A解释器(Interpreter)B策略(Strategy)C中介者(Mediator)D观察者(Observer)

单选题UMI图中,一张交互图显示一个交互。由一组对象及其之间的关系组成,包含它们之间可能传递的消息。()不是交互图。A序列图B对象图C通信图D时序图

单选题Decorator(装饰)模式的意图是:()。A定义一系列的算法,把它们一个个的封装起来,并且使它们可相互替换B为一个对象动态连接附加的职责C你希望只拥有一个对象,但不用全局对象来控制对象的实例化D在对象之间定义一种一对多的依赖关系,这样当一个对象的状态改变时,所有依赖于它的对象都将得到通知并自动更新

单选题关于模式适用性,在以下情况不适合使用OBSERVER(观察者)模式?()A当一个抽象模型有两个方面,其中一个方面依赖于另一方面。将这二者封装在独立的对象中以使它们可以各自独立地改变和复用B当对一个对象的改变需要同时改变其它对象,而不知道具体有多少对象有待改变C当一个对象必须通知其它对象,而它又不能假定其它对象是谁。换言之,你不希望这些对象是紧密耦合的D在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责

单选题以下意图哪个是用来描述MEDIATOR(中介者)?()A提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示B将抽象部分与它的实现部分分离,使它们都可以独立地变化C定义一个用于创建对象的接口,让子类决定实例化哪一个类D用一个中介对象来封装一系列的对象交互

单选题以下意图哪个是用来描述命令模式()A将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化B定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换C为其他对象提供一种代理以控制对这个对象的访问D保证一个类仅有一个实例,并提供一个访问它的全局访问点

单选题以下意图哪个是用来描述观察者模式()A将抽象部分与它的实现部分分离,使它们都可以独立地变化B定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新C用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象D使多个对象都有机会处理请求,避免请求的发送者和接收者之间的耦合关系

判断题行为模式涉及怎样合理地设计对象之间的交互通信,以及怎样合理为对象分配职责A对B错

单选题以下意图哪个是用来描述策略模式()A将抽象部分与它的实现部分分离,使它们都可以独立地变化B将一个复杂对象的构建与它的表示分离C定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换