面向对象分析与设计试题A卷及答案.pdf
上传人:文库****品店 上传时间:2024-09-15 格式:PDF 页数:7 大小:1.5MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

面向对象分析与设计试题A卷及答案.pdf

面向对象分析与设计试题A卷及答案.pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

面向对象分析与设计试题A卷及答案一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共20分)1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是(D)的出现和广泛使用,使面向对象方法成为了软件开发的主流方法。A.OMTB.OOSEC.C++D.UML2.(D)为编程人员提供了重复利用程序资源的一种途径,使编程人员可以扩充和完善旧的程序以适用新的需求。A.封装机制B.抽象机制C.多态机制D.继承机制3.面向对象程序设计中用(C)来描述具有相同属性和行为的对象集合。A.实体B.对象C.类D.类模板4.下列语言中,(D)是一种混合型面向对象编程语言。A.C语言B.Java语言C.Basic语言D.C++语言5.下列不属于类的成员函数的是(D)。A.构造函数B.析构函数C.缺省构造函数D.友元函数6.多态机制的作用是(B)。A.信息隐藏B.实现“一种接口,多种方法”C.派生新类D.数据抽象7.合理地利用(B),既可以实现部分成员隐蔽,又能方便部分成员的继承,实现代码的高效重用和扩充。A.公有继承B.保护继承C.友员函数D.私有继承8.(C)经过实例化而生成具体的类。A.抽象类B.函数模板C.类模板D.对象9.类的析构造函数是在(C)时调用的。A.不自动调用B.创建对象C.删除对象D.创建派生类对象10.在公有继承的情况下,基类的(C)成员无法继承到派生类中。A.公有成员B.保护成员C.私有成员D.静态成员11.在类族中通过定义(D)来实现运行时多态。A.类的嵌套B.类的继承C.抽象类D.虚函数12.UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。其中(C)不属于这类视图。A.对象图B.类图C.协作图D.组件图13.(D)是从用户使用系统的角度描述系统功能的图形表达方法。A.序列图B.协作图C.类图D.用例图14.在一个“库存管理系统”中,入库管理和出库管理都需要检查用户帐号是否正确。那么,用例“入库管理”、“出库管理”与用例“检查用户帐号”之间是(B)关系。A.扩展B.包含C.使用D.泛化15.(B)是表达构成系统的类及其相互联系的图示。A.对象图B.类图C.组件图D.配置图16.(D)是用来描述实现某些服务所涉及的对象及其相互之间的协作关系(包括消息通信)的动态视图。A.状态图B.活动图C.序列图D.协作图17.下面哪个选项中(C)不是序列图中的基本元素。A.对象B.生命线C.泳道D.消息18.以下是图书管理系统的相关类,属于控制类的是(C)A.图书类B.读者类C.身份验证类D.借书操作界面类19.在用UML进行数据库的分析与设计过程中,(B)就是进行数据库的需求分析,使用用例图等建立业务模型。A.逻辑数据模型设计B业务UseCase模型设计C.物理数据模型设计D.物理实现设计20.基于UML的关系数据库设计中,将类与类之间“多对多”的关联映射成关系数据模型时应建立一个(C)来实现多对多的关联。A.视图B.超类表C.关联表C.子表二、填空题(每空1分,共20分)1.____作为模拟人们理解和处理客观世界思维方式的面向对象技术,它也提供了_继承_的机制,使_继承性_成为了C++面向对象技C++术的最重要的基本特征。即面向对象技术将具有共性的事物抽象成类,允许定义新的一派生类—,并建立合理的_层次_结构,以精确地描述客观事物之间的联系。C++的这种机制为编程人员提供了重复利用_程序资源的一种途径,编程人员可以扩充和完善_旧的程序_以适用_新的需求可用继承机制实现代码重用和代码扩充,大大提高程序的开发效率。2.使用UML进行数据库设计,可以把数据库设计与应用程序设计结合在一起进行。传统的_ER图_仅仅着眼于数据的描述,而基于UML的_对象类图_不但对数据建模,而且能对_行为_建模。所以,使用UML能够更好地对数据库建模。逻辑数据模型设计的主要任务是确定应用系统所需要的持久数据。使用类图等建立数据库逻辑模型。如果是关系数据库设计,则需要设计岀表达持久数据的并把它们映射成为_关系数据库表_、_视图_等。三、写出下列程序的"满分10分)#include<iostream.h>classA{public:virtualvoidprint(){cout<<"printingofclassA."<<endl;;};}classB:publicA{public:v