面向对象分析与设计试题D卷一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题 1 分,共 20 分 )
1. 到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是( D ) 的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。
A. Simula67语言 B. Smalltalk语言
C. Java语言 D. 统一建模语言(UML)的标准
2.下列不属于面向对象技术的基本特征的是(B )。
A. 封装性 B. 模块性 C. 多态性 D. 继承性
3. 面向对象程序设计将描述事物的数据与 ( C ) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息 B. 数据隐藏 C. 对数据的操作 D. 数据抽象
4. C++ 对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是 ( D )。
A. 增加了一些新的运算符 B. 允许函数重载,并允许设置缺省参数
C. 规定函数说明符必须用原型 D. 引进了类和对象的概念
5. 下列不属于类的成员函数的是 ( C )。
A. 构造函数 B. 析构函数 C. 友元函数 D. 拷贝构造函数
6. 继承机制的作用是 ( C )。
A. 信息隐藏 B. 数据封装 C. 派生新类 D. 数据抽象
7. 通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是UML中的类成员访问限定符( C )
A.公有的 B.受保护的 C.友员的 D.私有的
8. 类模板经过实例化而生成具体 ( D )
A. 对象 B. 模板函数 C. 函数模板 D. 类
9. 类的构造函数是在 ( B) 调用的。
A. 类创建时 B. 创建对象时
C. 删除对象时 D. 不自动调用
10 在公有继承的情况下,基类成员在派生类中的访问权限 ( B )
A. 受 B. 保持不变 C. 受保护 D. 不受保护
11 . C++ 语言通过 ( B ) 来建立类族。
A. 类的嵌套 B. 类的继承 C. 虚函数 D. 抽象类
12. UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。其中( B )是面向对象系统建模中最常用的图,用于说明系统的静态设计视图
A. 用例图 B. 类图 C. 对象图 D. 序列图
13. 当需要描述体系结构的静态实施视图时,应该选择( D )。
A.对象图 B. 组件图 C. 类图 D. 配置图
14. 用例(Use-case)用来描述系统在事件做出响应时所采取的行动。用例之间是具有相关性的。在一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户帐号是否正确。那么,用例“创建新订单”、“更新订单”与用例“检查用户帐号”之间是( B )关系。
A.扩展(extend) B.包含(include)
C.分类(classification) D.聚集(aggregation)
15.( C )是描述系统中在某一时刻,一组对象以及它们之间关系的图形,其可以看作是类图在系统某一时刻的实例。
A.组件图 B.类图 C.对象图 D.部署图
16. 顺序图是强调消息随时间顺序变化的交互图,下面哪个不是用来描述顺序图的组成部分( D )
A.状态 B.生命线 C.激活期 D.类角色
17.下面哪个选项中有不是活动图中的基本元素( D )
A.状态、分支 B. 状态、汇合
C. 泳道、转移 D. 信号、转移
18. 以下是图书管理系统中的相关类,属于边界类的是( )
A.书类 B.借书操作界面类 C.书籍管理类 D.读者类
19. 在用UML进行数据库的分析与设计过程中,( B ) 就是进行数据库的需求分析,使用用例图、类图、顺序图、活动图等建立业务模型。
A. 逻辑数据模型设计 B 业务Use Case模型设计
C. 物理数据模型设计 D. 物理实现设计
20. 使用UML进行关系数据库的( B )时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。
A. 业务Use Case模型设计 B. 逻辑数据模型设计
C. 物理数据模型设计 C. 物理实现设计
二、填空题 ( 每空 1 分,共 20 分 )
1. UML中用于描述系统的静态建模的视图称为静态视图,包括__类图__、
_对象图__、__组件图_、__配置图_和__用例图__。用于描述系统的
动态建模的视图称为动态视图,包括___活动图__、__序列图_、__状态图__
和__协作图_。
2. 对象是客观实体的抽象表示,是由_____描述属性的数据_______和
___对这些数据的操作行为_____两部分组成。而___类___是对具有相同属性
和行为的一组对象的抽象描述。因此,它可作为一种用户自定义类型和创
建对象的样板,而按照这种样板所创建的一个个具体对象就是类的__实例____
通过__继承_关系又可形成一种类层次结构。
3. __ROSE_是美国Rational公司的面向对象建模工具,利用这个工具可以建立用_______描述的________ 的模型,而且可以自动生成和维护C++、Java、VB、Oracle等语言和系统的代码。____________的界面分为三个部分——___________窗口、_________窗口和__________窗口。
三、写出下列程序的输出结果。 ( 满分 10 分 )
#include
#include
class Base {
protected:
int *p;
public:
Base(int a=0){p=new int(a);}
~Base() {delete p;}
virtual void print() {cout<<"p->"<<*p<};
class Derived:public Base {
static int y;
public:
Derived(int b=0) {*p=b; y++;}
void print() {cout<<*p<<','<};
int Derived::y=0;
void main(void)
{ Derived d(10);
Base *pb=&d;
pb->print();
Derived(20).print();
}
五. 试用UML对网上超市系统及相关的数据库系统进行分析和设计。请完成下列工作:
(1)建立系统静态结构模型—画出系统用例图和类图;(10分)
(2)建立系统动态结构模型—画出序例图和活动图;(10分)
(2)建立关系数据库逻辑模型。(10分)