面向对象分析与设计试题样卷
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象分析与设计试题B卷
一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1 分,共20 分)
1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是()的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。
A. Simula67语言
B. Smalltalk语言
C. Java语言
D. 统一建模语言(UML)的标准
2. 面向对象的运动产生了多种面向对象的语言, 其中()是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。
A. Smalltalk
B. Eiffel
C. C++
D. Java 3.下列不属于面向对象技术的基本特征的是()。
A. 封装性
B. 模块性
C. 多态性
D. 继承性
4. 面向对象程序设计将描述事物的数据与( ) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息
B. 数据隐藏
C. 对数据的操作
D. 数据抽象
5. 关于面向对象方法的优点,下列不正确的叙述是()。
A. 与人类习惯的思维方法比较一致
B. 可重用性好
C. 以数据操作为中心
D.可维护性好
6. C++ 对C 语言作了很多改进,即从面向过程变成为面向对象的主要原
因是( )。
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. 类创建时
B. 创建对象时
C. 删除对象时
D. 不自动调用
12. 在公有继承的情况下,基类成员在派生类中的访问权限( )
A. 受限制
B. 保持不变
C. 受保护
D. 不受保护
13. . C++ 语言通过( ) 来建立类族。
A. 类的嵌套
B. 类的继承
C. 虚函数
D. 抽象类
14. ()是从用户使用系统的角度描述系统功能的图形表达方法。
A. 类图
B. 对象图
C. 序列图
D. 用例图
15. ( ) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建
立状态图、协作图和其他图的基础。
A.对象图 B. 组件图 C. 类图 D. 配置图16.()描述了一组交互对象间的动态协作关系,它表示完成某项行为的
对象和这些对象之间传递消息的时间顺序。
A.对象图 B. 协作图 C. 状态图 D. 序列图17.()就是用于表示构成分布式系统的节点集和节点之间的联系的图示,
它可以表示系统中软件和硬件的物理架构。
A. 组件图
B. 协作图
C. 状态图
D. 配置图
18. 在用UML进行数据库的分析与设计过程中,( ) 就是进行数据库的
需求分析,使用用例图、类图、顺序图、活动图等建立业务模型。A. 逻辑数据模型设计 B 业务Use Case模型设计
C. 物理数据模型设计
D. 物理实现设计
19. 使用UML进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。
A. 业务Use Case模型设计
B. 逻辑数据模型设计
C. 物理数据模型设计 C. 物理实现设计
20. UML的动态建模表示包含()种图。
A. 9
B. 5
C. 4
D. 2
二、填空题( 每空1 分,共20 分)
1. 面向对象开发方法一改过去传统的以_______________为基础的
______________的结构化分析与设计方法,它模拟人们理解和处理客观世界的方式来分析问题,把系统视为一系列_______的集合,其______________又将分析的结果映射到某种面向对象实现工具的结构上,使映射过程有着比较直接的对应关系,使分析者、设计者和编程者都可使用相同的______,从而使面向对象的软件开发能比较自然地模拟客观世界的活动,使问题描述空间与____________在结构上尽可能一致。因此,采用面向对象方法可以更有效地开发大型软件系统。面向对象方法的________、________、_________等机制不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造,更好地克服____________。因此,它已成为成熟的广为采用的软件开发方法。
2. 对象是客观实体的抽象表示,是由__________________________和
________________________两部分组成。而______是对具有相同属性和行为的一组对象的抽象描述。因此,它可作为一种用户自定义类型和创建对象的样板,而按照这种样板所创建的一个个具体对象就是类的___________。通过________关系又可形成一种类层次结构。
3. UML中用于描述系统的静态建模的视图称为静态视图,包括________、_________、_________、__________和__________。
三、写出下列程序的输出结果。( 满分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 {