2011年6月面向对象分析与设计试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象分析与设计试题(2011)
一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1 分,共20 分)
1. 面向对象分析与设计是面向对象软件开发过程中的两个重要阶段,下列活动中,_____ 不属于面向对象分析阶段。
A.构建分析模型 B.识别分析类C.用例动态建模 D.评估分析模型
2. 在面向对象方法中,_____可看成是属性数据以及这些属性数据上的专用操作的封装体。
A. 实体
B. 类
C. 类模板
D. 对象
3. 类是一组具有相同属性和相同操作的对象的集合,类中的每个对象都是这个类的一个_____。
A. 实体
B. 实例
C.用例
D. 组件
4. 一个对象通过发送_____来请求另一对象为其服务。
A. 参数
B. 消息
C. 成员函数名
D. 接口函数名5.类之间共享属性和操作的机制称为______。
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. 如果某基类的一个成员函数被说明为______,则该成员函数在派生类
中可以有不同的函数实现。
A. 内联函数
B. 静态函数
C. 友元函数
D. 虚函数
11. 在二进制模式下,可利用文件输入/输出流类中定义的______函数将所
有数据以字符形式存储到文件里。
A. load
B. save
C. write
D. read
12. 基类中的public 成员,通过protected派生,其在派生类中的可见性
为______。
A. private
B. 不可访问
C. public
D. protected
13. ______是数据类型抽象化或参数化的类。
A.抽象类B.基类C.组件D.类模板14. ______是UML中用来描述用户对系统的功能需求的有效模型图。
A.类图 B. 对象图 C. 组件图 D. 用例图15. 基于UML的______不但能对数据建模,而且能对行为建模。
A.组件图 B. 类图 C. 配置图 D. 序列图16. 用来描述为完成某项行为操作所涉及的对象和这些对象之间传递消息
的时间顺序的UML模型图叫做______。
A.活动图 B. 协作图 C. 状态图 D. 序列图17. UML的______用于描述系统业务流程,它由一系列的动作状态构成,
动作的状态控制可以从一个状态流向另一个与之相邻的状态。
A.状态图 B. 序列图 C. 活动图 D. 协作图18. UML的______是用于表示构成分布式系统的节点集和节点之间的联系
的图示,它可以表示系统中软件和硬件的物理架构。
A.组件图 B.类图 C. 协作图 D. 配置图19. UML的______用于表示系统的软件体系结构。
A.类图 B. 对象图 C. 组件图 D. 组件图20. 使用UML进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。
A. 业务Use Case模型设计
B. 逻辑数据模型设计
C. 物理数据模型设计
D. 物理实现设计
二、填空题( 每空 1 分,共20 分)
1. 在面向对象技术中,用_(1 )_来抽象地表示客观实体,用(2_)来抽象描述具有相同属性和行为的对象集合,用_(3)_来抽象地描述一组数据属性相似但某些数据类型不同的类。
2. 基于UML的系统分析的主要目标是为了更精确地理解_(4 )_,并获得一个使用_ (5 )_的语言描述的、易于维护的且能体现系统基本_(6 )_的分析模型。分析模型是由一系列_(7 )_和_(8 )_及其相互关系构成。分析模型中的类也叫分析类,分析类可分为三类:_(9 )_、_(10 )_、_(11 )_。类与类之间的联系可以分为四种:_(12 )_、_(13)_、_(14)_、_(15 )_。
3. 在基于UML的系统设计阶段,应该根据靠近问题域的(16 )_,转化得到靠近解域的(17 )_;在转化的过程中,对分析阶段的模型进行(18 )_和(19 )_,并用类似于编程实现的语言来描述(20 )。这个设计模型能够比较容易地被转化成程序代码。这就是系统设计的目的。
三、试编程实现下列类层次结构以实现对客户数据的管理。( 共20 分)
四. 简答题(每小题4分,共 20 分)
1. 为什么面向对象软件开发方法能成为软件开发的主流技术?
2. 面向对象技术包含哪些基本机制?
3. 由基类生成派生类的过程可分为几个步骤?
4. 基于UML 的面向对象系统开发方法包括哪几步?各步应画出哪些模型图?
5. 在于UML 的数据库系统分析和设计过程中,逻辑数据模型设计阶段的主要任务是什么?
五. 分析与设计题 (共20分)
试用UML 对库存管理系统及相关的数据库系统进行分析和设计。调查获知库存管理系统的主要用户是入库管理员、出库管理员、库存管理员和系统管理员:入库管理员负责登记、修改和查询入库流水账;出库管理员负责记录、、修改和查询出库流水账;库存管理员负责登记库存台帐、库存信息查询和打印库存报表;系统管理员负责用户信息管理、数据备份和产品基本信息管理。各种账目数据如下所示。
表 1 入库流水账
产品代码 单位
入库数量
单价
总价
入库日期
入库单编号
表 2 出库流水账
产品代码 单位
出库数量单价
总价
出库日期
表 3 库存台账
入库数量
日期
产品代码 单位
出库数量
库存数量
出库单编号
试完成下列工作:
(1)画出库存管理系统各用户的用例图;(5分) (2)定义库存管理系统的三个基本分析类;(5分) (3)画出库存管理系统的类图;(5分) (4)将类图转换为关系数据库模式;(5分)