UML与设计模式 2015-2016第一学期试卷(B)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
━ ━ ━ ━ ━ ━ ━ ━ ━ 装 ━ ━ ━ ━ ━ ━ ━ 订 ━ ━ ━ ━ ━ ━ ━ 线 ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━━ ━ ━━
防灾科技学院
2015 ~ 2016 学年 第一学期期末考试
UML 与设计模式 试卷(B )
使用班级:1250411/412/413/414 答题时间:120分钟
注意事项:闭卷
一、单项选择题(本大题
10小题,每题 2分,共 20 分,请将答案填写在题后的答案填写处) 1
、描述如何将关注如何将现有类或对象组织在一起形成更加强大的结构,可以使用(
)模式。 A 行为型 B 结构型 C 创建型 D 以上都可以
2、下面( )图元哪个一个表示关联关系。 A
B
C D 仔细审视下图,完成3-5题目
3、上图中的用例有( )
A 1 和4
B 2 和3
C 1 和5
D 5和4 4、上图中5和3之间是什么关系?
A 平行
B 包含
C 继承
D 扩展 5、上图中1和4之间是什么关系?
A 平行
B 包含
C 继承
D 扩展
6、下面关于接口的表述正确的是:( )
A 当一个接口太大时,需要将它分割成一些更细小的接口
B 接口里可以有方法的实现体
C 每一个接口可以承担几种角色
D 接口里可以有成员变量
7、一般来说,可采用( )模式实现一个类只有规定数量的实例? A 外观 B 观察者 C 组合 D 单例
8、下图是( )图
A 类
B 部署
C 动态
D 状态 9、以下面向对象设计说法正确的是( )
A 尽可能针对接口编程
B 尽可能将多个职责写到一个类中
C 多使用继承少使用组合
D 对象的创建与使用不分离
10、 参考下面的代码,请指出Car 类与Wheel 类之间存在什么关系( ) public class Car {
………………….. }
Public class Wheel {
public void move( Car c)
{……….} }
A 泛化关系
B 组合关系
C 实现关系
D 依赖关系
选择题答案填写处:
1( ); 2( ); 3( ); 4( ); 5( );
6( ) ;7( ); 8( ) ; 9( ); 10( )。
二、填空题(本题共10题,1-6题每空1分,7-10题每空2分,共20分,请将答案填写在题后的答案填写处)
1、UML (Unified Modeling Language)为面向对象软件设计提供 、 、 的建模语言。
2、设计模式包含4个要素分别是: 、 、 、 。
3、Java 编程使用 关键字表示类的作用域。
4、 动态地给一个对象增加一些额外的职责。就扩展功能而言,提供了一种比使用子类更加灵活的替代方案。
5、 面向对象设计原则是为支持 、 而诞生。
6、 是类元之间的语义关系,其中的一个类元指定了由另一个类元保证执行的契约。
7、单一职责原则指 。(2分)
8、依赖倒转原则指 。(2分)
9、迪米特法则指
。(2分) 10、开闭原则指 。(2分)
6、 。
7、 。(2分) 8、 。(2分) 9、 。(2分) 10、 。(2分)
三、判断题(本大题10个小题,每题1分,共10分,正确的请打√,错误的打×)
1、桥接模式可以在不改变一个对象本身功能的基础上给对象增加额外的新行为。 ( )
2、类A 的对象是类B 中的一个对象成员,A 与B 之间存在继承关系。 ( )
3、单例模式必须保证一个类只有一个实例。 ( )
4、工厂模式是行为型模式。 ( )
5、低耦合聚是指程序中各个模块间代码的关联性小。 ( )
6、复合享元模式使用了单例模式和组合模式思想。 ( )
7、迭代器模式的一个重要想法是让数据存储结构与其遍历算法解耦。 ( )
8、一个类的静态函数可以调用类内的非静态数据。 ( )
9、设计类时,尽量不让该类面向具体的类,而是面向抽象类或接口。 ( ) 10、在观察者模式中观察者和目标之间是一对多的关系。
( )
四、简单题(本大题共2个小题,每题10分,共
20 分。) 1、请回答下面2个与建设者模式相关的问题: (1)给出建设者模式的定义、包含的角色(结构)、适用环境。(6分)
(2)给出建设者模式的类图(4分)
2、请回答下面2个与适配器模式相关的问题:
(1)给出适配器模式的定义、包含的角色(结构)、适用环境。(6分)
(2)给出适配器模式类图?(4分)
五、分析设计题(本大题共2个小题,每题15分,共30分。)
1、指出下面的类图是哪种设计模式的类图,并给出Handler 类和ConcreteHandlerA类的实现代码(C++、Java、C#任选一种)。(15分)
Handler
-successor: Handler
+HandleRequest ()
...
ConcreteHandlerA +HandleRequest () ...
ConcreteHandlerB +HandleRequest () ...
Client