软件水平考试

已知一个类可以处理以英制标准(英寸、英里等)表示的数据,现在需要处理一公制单位表示的数据,则可以使用Adapter模式来解决该问题。当( )时,可以使用该设计模式。A.对一个抽象的实现部分的修改对用户不产生影响 B.想使用一个已经存在的类,而它的接口不符合用户需求 C.一个系统要独立于它的产品创建、组合和表示 D.一个对象的改变需要同时改变其他对象

题目
已知一个类可以处理以英制标准(英寸、英里等)表示的数据,现在需要处理一公制单位表示的数据,则可以使用Adapter模式来解决该问题。当( )时,可以使用该设计模式。

A.对一个抽象的实现部分的修改对用户不产生影响
B.想使用一个已经存在的类,而它的接口不符合用户需求
C.一个系统要独立于它的产品创建、组合和表示
D.一个对象的改变需要同时改变其他对象
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

如果一个数据库的关系模式设计有问题,则进行数据库的操作时则可能出现哪些问题?


答:(1)数据冗余。(2)插入异常。(3)删除异常。(4)更新异常。

第2题:

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

(46)

A. 桥接

B. 策略

C. 抽象工厂

D. 观察者

(47)

A. 该设计模式中的Observer 需要维护至少一个Subject对象

B. 该设计模式中的ConcreteObserver 可以绕过 Subject及其子类的封装

C. 该设计模式中一个Subject对象需要维护多个Observer 对象

D. 该设计模式中Subject需要通知 Observer 对象其自身的状态变化


正确答案:D,B

第3题:

● 某软件公司正在设计一个通用的嵌入式数据处理平台,需要支持多种数据处理芯片之间的数据传递与交换。该平台的核心功能之一要求能够屏蔽芯片之间的数据交互,使其耦合松散,并且可以独立改变芯片之间的交互过程。针对上述需求,采用 (53) 最为合适。

(53)

A. 抽象工厂模式

B. 策略模式

C. 中介者模式

D. 状态模式


正确答案:C

第4题:

设计模式描述了一个出现在特定设计语境中的设计再现问题,并为它的解决方案提供了一个经过充分验证的通用方案,不同的设计模式关注解决不同的问题。例如,抽象工厂模式提供一个接口,可以创建一系列相关或相互依赖的对象,而无需指定它们具体的类,它是一种( )模式;(请作答此空)模式将类的抽象部分和它的实现部分分离出来,使它们可以独立变化,它属于( )模式;( )模式将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作。

A.Bridge
B.Proxy
C.Prototype
D.Adapter

答案:A
解析:
设计模式包括:创建型、结构型、行为型三大类别。抽象工厂模式属于创建型设计模式。桥接模式属于结构型设计模式。

第5题:

软件设计是将软件需求转换为软件表示的过程,主要描绘出系统结构、详细的处理过程和______。

A.软件模式

B.数据模式

C.数据库管理模式

D.数据库模式


正确答案:D

第6题:

下列可能会导致GC内存泄露的是()。

A.衍生listview的优化问题-----减少创建view的对象,充分使用contentview,可以使用一静态类来优化处理getview的过程activity

B.构造adapter时,没有使用缓存contentview

C.数据库的cursor没有关闭

D.使用sqlite数据库


正确答案:ABC

第7题:

已知一个类可以处理以英制标准(英寸、英里等)表示的数据,现在需要处理一公制单位表示的数据,则可以使用( )模式来解决该问题。当( )时,可以使用该设计模式。

A.Adapter B.Decorator C.Delegation D.Proxy A.对一个抽象的实现部分的修改对用户不产生影响 B.想使用一个已经存在的类,而它的接口不符合用户需求 C.一个系统要独立于它的产品创建、组合和表示 D.一个对象的改变需要同时改变其他对象


正确答案:A,B

第8题:

当不适合采用生成子类的方法对已有的类进行扩充时,可以采用( )没计模式动态地给一个对象添加一些额外的职责;当应用程序由于使用大量的对象,造成很大的存储开销时,可以采用( )设计模式运用共享技术来有效地支持大量细粒度的对象;当想使用一个已经存在的类,但其接口不符合需求时,可以采用( )设计模式将该类的接口转换成我们希望的接口。

A.命令(Command)

B.适配器(Adapter)

C.装饰(Decorate)

D.享元(Flyweight)


正确答案:C
解析:装饰模式主要的目的是在无法生成子类的情况下给一个对象动态地增加新的职责;享元设计模式是共享大量细粒度的对象;适配器设计模式则是将已有的接口转换为系统希望的接口形式。

第9题:

● 当不适合采用生成子类的方法对已有的类进行扩充时,可以采用 (43) 设计模式动态地给一个对象添加一些额外的职责;当应用程序由于使用大量的对象,造成很大的存储开销时,可以采用 (44) 设计模式运用共享技术来有效地支持大量细粒度的对象;当想使用一个已经存在的类,但其接口不符合需求时,可以采用 (45) 设计模式将该类的接口转换成我们希望的接口。

(43)

A. 命令(Command)

B. 适配器(Adapter)

C. 装饰(Decorate)

D. 享元(Flyweight)

(44)

A. 命令(Command)

B. 适配器(Adapter)

C. 装饰(Decorate)

D. 享元(Flyweight)

(45)

A. 命令(Command)

B. 适配器(Adapter)

C. 装饰(Decorate)

D. 享元(Flyweight)


正确答案:C,D,B


第10题:


A.该设计模式中的Observer需要维护至少一个Subject对象
B.该设计模式中的ConcreteObserver可以绕过Subject及其子类的封装
C.该设计模式中一个Subject对象需要维护多个Observer对象
D.该设计模式中Subject需要通知Observer对象其自身的状态变化

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


更多相关问题