1、在某销售系统中,客户采用扫描二维码进行支付。若采用面向对象方法开发该销售系统,则客户类属于____(39)____类, 二维码类属于(40)类。
(39)
A.接口
B.实体
C.控制
D.状态
(40)
A.接口
B.实体
C.控制
D.状态
2、假设现在要创建一个简单的超市销售系统,顾客将毛巾、饼干、酸奶等物品(Item)加入购物车(Shopping_Cart),在收银台(Checkout)人工(Manual)或自动(Auto)地将购物车中每个物品的价格汇总到总价格后结帐。这一业务需求的类图(方法略)设计如下图所示,采用了______(44)______模式。其中____(45)____定义以一个Checkout对象为参数的accept操作,由子类实现此accept操作。此模式为____(46)____,适用于____(47)____。
(44)
A.观察者(Observer)
B.访问者(Visitor)
C.策略(Strategy)
D.桥接器(Bridge)
(45)
A.Item
B.Shopping_Cart
C.Checkout
D.Manual和Auto
(46)
A.创建型对象模式
B.结构型对象模式
C.行为型类模式
D.行为型对象模式
(47)
A.必须保存一个对象在某一个时刻的(部分)状态
B.想在不明确指定接收者的情况下向多个对象中的一个提交一个请求
C.需要对一个对象结构中的对象进行很多不同的并且不相关的操作
D.在不同的时刻指定、排列和执行请求
3、假设现在要创建一个Web应用框架,基于此框架能够创建不同的具体Web应用,比如博客、新闻网站和网上商店等;并可以为每个Web应用创建不同的主题样式,如浅色或深色等。这一业务需求的类图设计适合采用____(45)____模式(如下图所示)。其中____(46)____是客户程序使用的主要接口,维护对主题类型的引用。此模式为____(47)_____,体现的最主要的意图是_____(48)____。
(45)
A.观察者(Observer)
B.访问者(Ⅴisitor)
C.策略( Strategy)
D.桥接( Bridge)
(46)
A.Webapplication
B. Blog
C. Theme
D. Light
(47)
A.创建型对象模式
B.结构型对象模式
C.行为型类模式
D.行为型对象模式
(48)
A.将抽象部分与其实现部分分离,使它们都可以独立地变化
B.动态地给一个对象添加一些额外的职责
C.为其他对象提供一种代理以控制对这个对象的访问
D.将一个类的接口转换成客户希望的另外一个接口
4、如图所示的UML类图中,Shop和Magazine之间为_____(41)____关系,Magazine和Page之间为____(42)____关系。UML类图统称不用于对____(43)____进行建模。
(41)
A.关联
B.依赖
C.组合
D.继承
(42)
A.关联
B.依赖
C.组合
D.继承
(43)
A.系统的词汇
B.简单的协作
C.逻辑数据库模式
D.对象快照
5、自动售货机根据库存、存放货币量、找零能力、所选项目等不同,在货币存入并进行选择时具有如下行为:交付产品不找零 :交付产品找零:存入货币不足而不提供任何产品;库存不足而不提供任何产品。这一业务需求适合采用____(44)____模式设计实现,其类图如下图所示,其中____(45)____是客户程序使用的主要接口,可用状态来对其进行配置。此模式为____(46)____,体现的最主要的意图是____(47)____。
(44)
A.观察者(Obeserver)
B.状态(State)
C.策略(Stratehy)
D.访问者(Visitor)
(45)
A.VendingMachineState
B.Buy
C.VendingDepositState
D.VendingStockState
(46)
A.创建型对象模式
B.结构型对象模式
C.行为型类模式
D.行为型对象模式
(47)
A.当一个对象状态改变时所有依赖它的对象得到通知并自动更新
B.在不破坏封装性的前提下,捕获对象的内部状态并在对象之外保存
C.一个对象在其内部状态改变时改变其行为
D.将请求封装为对象从而可以使用不同的请求对客户进行参数化
6、下图①②③④所示是UML(42 )。现有场景:一名医生(Doctor)可以治疗多位病人(Patient),一位病人可以由多名医生治疗,一名医生可能多次治疗同一位病人。要记录哪名医生治疗哪位病人时,需要存储治疗(Treatment)的日期和时间。以下①②③④图中(43 )。是描述此场景的模型。
(42)A 用例图 B 对象图 C 类图 D 协作图
(43)A ① B ② C ③ D ④
7、装饰器(Decorator)模式用于(46);外观(Facade)模式用于(47)。
①将一个对象加以包装以给客户提供其希望的另外一个接口
②将一个对象加以包装以提供一些额外的行为
③将一个对象加以包装以控制对这个对象的访问
④将一系列对象加以包装以简化其接口
(46)
A.① B.② C.③ D.④
(47)
A.① B.② C.③ D.④
(41)
A.序列图 B.状态图 C.通信图 D.活动图
(42)
A.类 B.对象 C.流名称 D.消息
(43)
A.类 B.对象 C.流名称 D.消息
9、下图所示为观察者(Obserrver)模式的抽象示意图,其中(44)知道其观察者,可以有任何多个观察者观察同一个目标;提供住处和删除观察者对象的接口。此模式体现的最主要的特征是(45)
(44)
A.Subject B.Observer C.ConcreteSubject D.ConcreteObserver
(45)
A.类应该对扩展开放,对修改关闭
B.使所要交互的对象尽量松耦合
C.组合优先于继承使用
D.仅与直接关联类交互
10、____(46)____模式将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。以下___(47)____情况适合选用该模式。
①抽象复杂对象的构建步骤
②基于构建过程的具体实现构建复杂对象的不同表示
③一个类仅有一个实例
④一个类的实例只能有几个不同状态组合中的一种
(46)A 生成器(builder) B 工厂方法(Factory Method) C 原型(Prototype) D 单例(Singleton)
(47)A ①② B ②③ C ③④ D ①④
11、如下所示的UML状态图中,(40)时,不一定会离开状态B。
A 状态B中的两个结束状态均达到
B 在当前状态为B2时,事件e2发生
C 事件e2发生
D 事件e1发生
12、以下关于UML状态图中转换(Transition)的叙述中,不正确的是_____(41)______
A 活动可以在转换时执行也可以在状态内执行
B 监护条件只有在相应的事件发生时才进行检查
C 一个转换可以有事件触发器、监护条件和一个状态
D 事件触发转换
13、____(44)_____模式定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换,使得算法可以独立于使用它们的客户而变化。以下(45)情况适合选用该模式。
①一个客户需要使用一组相关对象
②一个对象的改变需要改变其他对象
③需要使用一个算法的不同变体
④许多相关的类公公是行为有异
(44)A 命令(Command) B 责任链(Chain of Responsibility) C 观察者(Observer) D 策略(Strategy)
(45)A ①② B ②③ C ③④ D ①④