版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、面向对象分析与设计试题 B 卷一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号 填在题干的括号内。每小题 2 分,共 20 分 )1. 到 20 世纪末,面向对象软件工程已经逐渐发展成熟,特别是( )的 形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。A. Simula67 语言 B. Smalltalk 语言C. Java语言D. 统一建模语言(UML)的标准2. 面向对象的运动产生了多种面向对象的语言 , 其中( )是一种混合性面向对象语言 , 既 支持面向过程的程序设计方法, 又支持面向对象的程序设计方法, 有广泛应用的基础
2、和丰富 开发环境的支持,因而使面向对象的程序设计能得到很快普及。A. Smalltalk B. EiffelC. C+D. Java3下列不属于面向对象技术的基本特征的是(A. 封装性 B. 模块性 C. 多态性4. 面向对象程序设计将描述事物的数据与 ( ) 的整体来处理。)。D. 继承性封装在一起 , 作为一个相互依存、 不可分割A. 信息 B.数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点,下列不正确的叙述是 ( )。A. 与人类习惯的思维方法比较一致B.可重用性好C. 以数据操作为中心D.可维护性好6. ( )是从用户使用系统的角度描述系统功能的图形表达方法。A.
3、 类图 B. 对象图 C.7. ( ) 是表达系统类及其相互联系的图示 图和其他图的基础。A 对象图 B. 组件图C.序列图D. 用例图, 它是面向对象设计的核心,建立状态图、协作类图D. 配置图8. ()描述了一组交互对象间的动态协作关系, 它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。A 对象图 B. 协作图 C. 状态图D. 序列图9. ( )就是用于表示构成分布式系统的节点集和节点之间的联系的图示, 它可以表示系统中软件和硬件的物理架构。A. 组件图 B. 协作图 C. 状态图 D. 配置图10. 使用UML进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并
4、把它们映射成为关系数据库表(A. 业务 Use Case 模型设计C. 物理数据模型设计Table) 、视图 (View) 等。B. 逻辑数据模型设计C. 物理实现设计、填空题 ( 每空 1 分,共 20 分 )1. 面向对象开发方法一改过去传统的以 _功能分析 _为基础的 _面向过程 _的结构 化分析与设计方法, 它模拟人们理解和处理客观世界的方式来分析问题, 把系统视为一系列 _对象 _的集合,其 _面向对象的设计 _又将分析的结果映射到某种面向对象实现 工具的结构上, 使映射过程有着比较直接的对应关系, 使分析者、 设计者和编程者都可 使用相同的 _概念 _,从而使面向对象的软件开发能比
5、较自然地模拟客观世界的活动,使问题描述空间与 _解空间 _在结构上尽可能一致。因此,采用面向对象方法可以更有效 地开发大型软件系统。面向对象方法的_封装 _、_继承 _、_多态 _等机制不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造,更好地克服_软件危机 _。因此,它已成为成熟的广为采用的软件开发方法。2. 对象是客观实体的抽象表示, 是由 _描述对象属性的数据 _和_对这些数据进行的操作行 为_两部分组成。 而_类_是对具有相同属性和行为的一组对象的抽象描述。因此, 它可作为一种用户自定义类型和创建对象的样板, 而按照这种样板所创建的一个个具体对象 就是类的 _实例_
6、。通过 _继承_关系又可形成一种类层次结构。3. UML 中用于描述系统的静态建模的视图称为静态视图,包括_用例图_、_类图_、 _对象图 _、_包图_和_构件图 _。三、写出下列程序的输出结果。 ( 满分 10 分 )#include #include class Personpublic:Person(char *s)name=new charstrlen(s)+1;strcpy(name, s);virtual void print() cout ” My name is ” nameendl; protected:char *name;class Student:public Pers
7、on public:Student(char *s, float g):Person(s) avg=g; void print(char *s) couts ” My name is “ name” and my grade is ” avgendl; private:float avg;class professor:public Person public:Professor(char *s, int n):Person(s) publs=n; void print() cout ” My name is ”name” and I have ” publs” publication. ”
8、print();p=&y; p-print();p=&z; p-print(); 【运行结果:My name is ZhangMy name is WangMy name is Liu and I have 5 publications.四. 简答题(每小题 5 分,共 20 分)1. 简述面向对象软件开发方法的优点。2. 简述面向对象技术的三大机制。答:( 1)封装性 (encapsulation)所谓封装就是把对象的属性和行为结合成一个独立的单位, 使外界不能直接访问或修改 这些数据和代码,外界只能通过对象提供的接口函数来改变或获取对象的属性数据,这 就实现了消息隐蔽。(2) 继承性 如果
9、在一个已定义的类上,增加一些特殊属性或操作,可以形成一个新的类,这个类不 仅继承了前一个类的全部特征, 而且具有新的特性, 因此可看作前一个类的特例, 是对前 一个类的继承。 前一个类称为父类, 新产生的类叫做子类。 通过继承关系可形成一种类层 次结构,叫做继承结构。( 3)多态性在类层次结构的不同类中,可用相同的函数名实现功能不同的函数。3. 简述00A莫型的层次结构。答:OOA莫型采用五层次结构,它们分别是:(1) 对象 - 类层划分待开发系统及其环境信息的基本构造单位, 标出反映问题域的对象和类, 并用符号 进行规范的描述,用信息提供者熟悉的术语为对象和类命名。(2)属性层定义对象和某些
10、结构中的数据单元,继承结构中所有类的公共属性可放于通用类中。标识对象类必需的属性并放在合适的继承层次上,属性的特殊限制和实例连接关系也应标识出来。(3)服务层表示对象的服务或行为,即是要定义类上的操作。(4)结构层标识现实世界中对象之间的关系。当一个对象是另一个对象的一部分时,用整体-部分关系表示;当一个类属于另一个类时,用类之间继承关系表示。(5)主题层可将相关类或对象划分为一个主题。4. 简述00D莫型的总体结构,并画图表示。【4】答案:00体系结构的各个部分内容: (1)问题论域部分,在00A模型的基础上,细化分析结果,设计一组构成底层应用模型的类和 对象。(2 )人机交互部分:设计用户
11、界面模型,该用户界面模型中的类和对象提供实现人机交互操 作的接口函数。用户界面设计包括菜单设计、窗口设计、输入 /输出界面设计等等。(3)任务管理部分:建立一些类,用以负责处理操作系统级的并发问题、中断、调度以及 其它与特定平台有关的问题。(4)数据管理部分:提供数据管理系统中存储和检索对象的基本结构,包括对永久性数据的访问和管理。数据管理设计包括:数据存放设计:数据存放设计选择数据存放的方式(文件存放、关系数据库表格存放或面向对象的数据库存放)。设计相应的操作。为每个需要存储的对象和类增加用于存储管理的属性和操作,类和对象的定义中加以描述。class & object layer(类及对象层
12、attribute layer(类及对象层service layer(服务层struct layer(结构层subject layer(主题层问 题 论 域 部 分人 机 交 互 部 分任 务 管 理 部 分数 据 管 理 部 分)实例连接类边界实例边界属性消息服务口 口口主题五试用UML对教学管理系统及相关的数据库系统进行分析和设计。学生选课系统一般包括(1)选课管理功能;(2)成绩管理功能。试完成下列工作:(1) 建立系统静态结构模型一画出系统用例图和类图;(10分)(2)建立系统动态结构模型一画出系统序列图和协作图;(10分)(3) 建立关系数据库逻辑模型。(10分)【答案:管理老师信息
13、老师0查询学生成绩查询课程成绩管理员管理学生信息亠管理课程信息4管理开设课程(a)选课管理的用例图学生(b)成绩管理的用例图对象类图如下:(a)选课对象类图开设课程学生成绩登记课程名 授课日期 授课时间学生名学期课程名地点成绩指定老师() 学生满否()加入成绩() 打印()鼻成绩统计期- 课程名 成绩按课程统计() 按学生统计 o 打印()(b)成绩管理对象类图(2)把需要持久存储的数据实体类及其联系,映射成为如下关系数据库表:学生(学生号、姓名、出生日期、性别、籍贯、地址、电话、入学时间、专业、班级备注) 教师(教师号、姓名、出生日期、性别、籍贯、地址、电话、职称、专长、备注)课程(课程号、
14、课程名、描述、学分、学时、性质、备注)开设课程(课程号、学期、授课日期、授课时间、地点、选修人数、备注)】面向对象分析与设计试题C卷一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序 填在题干的括号内。每小题1分,共20分)1.面向对象技术的最重要的基本特征是()。A.抽象性 B.封装性C.多态性D.继承性2.面向对象程序设计将描述事物的数据与()封装在一起,作为一个相互依存、的整体来处理。A.信息B.数据隐藏C.对数据的操作 D.数据抽象不可分割3. 关于面向对象方法的优点,下列不正确的叙述是()。A. 与人类习惯的思维方法比较一致B.可重用性好C. 以数据操作为中
15、心 D. 可维护性好14在用例之间,会有三种不同的关系,A. 包含( include )C. 泛化( generalization )4. C+ 对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是 ( )A. 增加了一些新的运算符B允许函数重载,并允许设置缺省参数C. 规定函数说明符必须用原型 D.引进了类和对象的概念5. 下列不属于类的成员函数的是( )。A. 构造函数 B.析构函数C.友元函数D.拷贝构造函数6. 继承机制的作用是 () 。A. 信息隐藏 B.数据封装C.派生新类D.数据抽象7. 类模板经过实例化而生成具体 ( )A. 对象B.模板函数C. 函数模板D.类8.
16、类的析构函数是在 () 调用的。A. 类创建时B.创建对象时C. 删除对象时D.不自动调用9.在公有继承的情况下,基类成员在派生类中的访问权限( )A. 受限制 B.保持不变C.受保护D.不受保护10.C+ 语言通过 ( )来建立类族。A. 类的嵌套 B.类的继承C.虚函数D.抽象类11在UML中,有3种基本构造块,分别是(A)A. 事物、关系和图B. 注释、关系和图C. 事物、关系和结构D. 注释、关系和结构12在UML中,有四种关系,下面哪个不是(B)A. 依赖关系B. 继承关系C. 泛化关系 D.实现关系13下面哪个不是 UML中的静态视图()A. 状态图B. 用例图C.对象图D.类图D
17、)列哪个不是它们之间可能的关系(B. 扩展( extend )D. 关联( connect )15下列关于活动图的说法错误的是()A. 一张活动图从本质上说是一个流程图,显示从活动到活动的控制流B. 活动图用于对业务过程中顺序和并发的工作流程进行建模。C. 活动图的基本要素包括状态、转移、分支、分叉和汇合、泳道、对象流。D. 活动图是UML中用于对系统的静态方面建模的五种图中的一种16用例( Use-case )用来描述系统在事件做出响应时所采取的行动。用例之间是具有相关 性的。在一个“订单输入子系统” 中,创建新订单和更新订单都需要检查用户帐号是否正确。 那么,用例“创建新订单”、“更新订单
18、”与用例“检查用户帐号”之间是()关系A. 扩展( extend )C. 分类( classification)B. 包含( include )D. 聚集( aggregation )17 . UML中类的有三种,下面哪个不是其中之一()A.实体类B.抽象类C.控制类D.边界类18阅读图例,判断下列哪个说法是错误的。()A .读者可以使用系统的还书用例B .每次执行还书用例都要执行图书查询用例C. 每次执行还书用例都要执行交纳罚金用例D. 执行还书用例有可能既执行图书查询用例,又执行交纳罚金用例1 9 关于协作图的描述,下列哪个不正确(B)A. 协作图作为一种交互图,强调的是参加交互的对象的组
19、织;B. 协作图是顺序图的一种特例C. 协作图中有消息流的顺序号;D. 在ROSE工具中,协作图可在顺序图的基础上按“F5”键自动生成;20 .在UML中,()把活动图中的活动划分为若干组,并将划分的组指定给对象,这些对 象必须履行该组所包括的活动,它能够明确地表示哪些活动是由哪些对象完成的。A组合活动B .同步条C .活动D .泳道二、填空题 ( 每空 1 分,共 20 分 )1. 对象是客观实体的抽象表示,是由 和两部分组成。而是对具有相同属性和行为的一组对象的抽象描述。因此,它可作为一种用 户自定义类型和创建对象的样板,而按照这种样板所创建的一个个具体对象就是类的 。通过 关系又可形成一
20、种类层次结构。 在类层次结构的不同类 中,可用相同的函数名实现功能不同的函数,面向对象技术的这种特性叫做2. UML 从不同的视角为系统架构建模,可产生九种视图:3. 是用来反映若干个对象之间动态协作关系的一种交互图。它主要反映对象之间已发送消息的先后次序和对象之间的交互过程。 是用来描述实现某些服务所涉及的对象及其相互之间的关系(包括消息通信 ) 的动态视图。建模者可以选择 来反映对象之间的协作关系; 如果需要强调时间和序列,最好选择 ;如果需要强调上下文相关,最好选择三、写出下列程序的输出结果。 ( 满分 10 分 )#include #include class Personpublic
21、:Person(char *s) name=new charstrlen(s)+1;strcpy(name, s);virtual void print() cout ” My name is ” nameendl; protected:char *name;class Student:public Person public:Student(char *s, float g):Person(s) avg=g; void print(char *s)avgendl; couts ” My name is “ name” and my grade is ” private: float avg;
22、class professor:public Person public:Professor(char *s, int n):Person(s) publs=n; void print() cout ” My name is ”name” and I have ” publs” publication. ” print();p=&y; p-print();p=&z; p-print(); 四. 简答题(每小题 4 分,共 20 分)1. 简述统一建模语言 UML的优点。2. 简述面向对象技术的三大机制。3. 简述面向对象分析的基本步骤。4. 简述00D莫型的总体结构,并画图表示。5. 应用UM
23、L进行系统分析和设计所需建立视图有那几种五. 试用UML对图书管理系统及相关的数据库系统进行分析和设计。图书管理系统应实现(1)借书; (2) 还书;( 3)图书资料和借阅信息查询;(4)系统维护。试完成下列工作:(1) 建立系统静态结构模型画出系统用例图和类图;(10 分)(2) 建立系统动态结构模型画出序列例图和协作图;(10 分)(2)建立关系数据库逻辑模型。 (10分)面向对象分析与设计试题 D 卷一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号 填在题干的括号内。每小题 1 分,共 20 分 )1. 到 20世纪末,面向对象软件工程已经逐渐发展成熟,
24、特别是() 的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。A. Simula67 语言 B. Smalltalk语言C. Java 语言D.统一建模语言(UML)的标准2下列不属于面向对象技术的基本特征的是(A. 封装性 B. 模块性 C. 多态性3. 面向对象程序设计将描述事物的数据与 ( )。D. 继承性封装在一起 , 作为一个相互依存、 不可分割的整体来处理。A. 信息 B. 数据隐藏 C. 对数据的操作 D. 数据抽象4. C+ 对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是( )。A. 增加了一些新的运算符 B. 允许函数重载,并允
25、许设置缺省参数 C. 规定函数说 明符必须用原型 D. 引进了类和对象的概念5. 下列不属于类的成员函数的是( )C.。友元函数 D.拷贝构造函数A. 构造函数 B.析构函数6. 继承机制的作用是( ) 。A. 信息隐藏 B.数据封装C.派生新类 D.数据抽象7. 通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不 是UML中的类成员访问限定符()A. 公有的 B. 受保护的 C. 友员的 D. 私有的8. 类模板经过实例化而生成具体 ( )A. 对象 B. 模板函数 C. 函数模板 D. 类9. 类的构造函数是在 ( ) 调用的。A. 类创建时 B. 创建对象时C.
26、 删除对象时 D. 不自动调用10 在公有继承的情况下,基类成员在派生类中的访问权限 ( )A. 受限制 B. 保持不变 C. 受保护 D. 不受保护11 . C+ 语言通过 ( ) 来建立类族。A. 类的嵌套 B. 类的继承 C. 虚函数 D. 抽象类12. UML提供了 4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。其中( )是面向对象系统建模中最常用的图,用于说明系统的静态设计视图A. 用例图B. 类图C.对象图D.序列图13. 当需要描述体系结构的静态实施视图时,应该选择()。A 对象图B.组件图C.类图D.配置图14. 用例(Use-case )用来描述系统在事件做出
27、响应时所采取的行动。用例之间是具有相关性的。 在一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户帐号是否正确。 那么,用例“创建新订单” 、“更新订单” 与用例“检查用户帐号” 之间是( ) 关系。A. 扩展( extend )B.包含( include )C. 分类( classification)D.聚集( aggregation )15. ( )是描述系统中在某一时刻,一组对象以及它们之间关系的图形,其可以看作是 类图在系统某一时刻的实例。A组件图B .类图C .对象图D 部署图面哪个不是用来描述顺序图的组成部分C. 激活期D. 类角色16. 顺序图是强调消息随时间顺序变化的
28、交互图,()A. 状态B. 生命线17. 下面哪个选项中有不是活动图中的基本元素 ( )A.状态、分支B.状态、汇合C. 泳道、转移D.信号、转移18. 以下是图书管理系统中的相关类,属于边界类的是 ( )A. 书类 B. 借书操作界面类 C. 书籍管理类 D. 读者类19. 在用UML进行数据库的分析与设计过程中,()就是进行数据库的需求分析,使用用例图、类图、顺序图、活动图等建立业务模型。A. 逻辑数据模型设计B业务 Use Case 模型设计C. 物理数据模型设计D.物理实现设计20.使用UML进行关系数据库的)时,需要设计出表达持久数据的实体类及其联系,把它们映射成为关系数据库表(A.
29、 业务 Use Case 模型设计 C. 物理数据模型设计Table) 、视图 (View) 等。B. 逻辑数据模型设计C. 物理实现设计二、填空题 ( 每空 1 分,共 20 分 )1. UML 中用于描述系统的静态建模的视图称为静态视图,包括 、和。用于描述系统的 动态建模的视图称为动态视图,包括 、和。2. 对象是客观实体的抽象表示,是由 和 两部分组成。而 是对具有相同属性 和行为的一组对象的抽象描述。因此,它可作为一种用户自定义类型和创 建对象的样板,而按照这种样板所创建的一个个具体对象就是类的通过 关系又可形成一种类层次结构。3. 是美国 Rational 公司的面向对象建模工具,
30、利用这个工具可以建立用 描述的 的模型,而且可以自动生成和维护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*pendl; ;class Derived:public Base static int y;public:Derived(int b=0) *
31、p=b; y+;void print() cout*p,yprint();Derived(20).print(); 四. 简答题(每空 4 分,共 20 分)1. 简述UML的优点。2. 简述面向对象技术的三大机制。3. 简述00A莫型的层次结构。4. 简述00D莫型的总体结构,并画图表示。5. 应用UML进行数据库系统分析和设计步骤。五. 试用UML对网上超市系统及相关的数据库系统进行分析和设计。请完成下列工作:(1) 建立系统静态结构模型画出系统用例图和类图;(10 分)(2) 建立系统动态结构模型画出序例图和活动图;(10 分)(2)建立关系数据库逻辑模型。(10分)2009-2010
32、第一学期面向对象分析与设计试题一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号 填在题干的括号内。每小题 1 分,共 20 分 )1. ( ) 常常被定义成虚函数。A. 构造函数 B. 析构函数 C. 友元函数 D. 静态函数2. ( )是对具有相同属性和行为的对象集合的抽象描述A. 系统 B. 实体 C. 对象 D. 类3. 封装的目的是实现信息的有效( )A. 共享B.隐蔽C. 操作D.继承4. ( )是实现“一种接口,多种方法”的技术。A. 抽象性 B. 封装性 C. 多态性 D.继承性5. C+ 对 C 语言作了很多改进,即从面向过程变成为面向对象的主
33、要原因是 ( )A. 增加了一些新的运算符 B. 引进了类和对象的概念C. 允许类的继承和派生 D. 允许函数重载6. 继承机制的作用是 ( )A. 信息隐藏 B.数据封装 C. 数据抽象D. 软件重用7. ( ) 经过实例化而生成具体的类。A. 对象 B. 函数模板 C.类模板 D. STL8. 类的构造函数是在 ( ) 调用的。 A. 类创建时 B.C. 删除对象时 D.创建对象时不自动调用9. 在保护性继承的情况下,基类的 A. 公有 B. 私有 C.public 和 protected 成员在派生类中变为 ( )受保护 D. 任意10. 下列哪种做法不符合面向对象设计的原则( A. 类
34、与类之间的耦合应该很松散)。成员。B.继承耦合应尽可能松散C.继承耦合应尽可能紧密D.设计应该具有最优的可重用性11.()是从用户使用系统的角度描述系统功能的图形表达方法。A.对象图B.类图C.序列图D.用例图12在对象模型中,()体现了继承性概念。A.关联B.依赖关系C.泛化关系D.聚合/组合关系13. ( )是面向对象设计的核心,建立状态图、协作图和其他图的基础。A. 对象图 B. 组件图 C. 类图 D. 序列图14. 下面哪个是 UML中的动态视图()A. 用例图B. 类图C. 对象图D. 序列图15. 下列说法错误的是()A. 活动图不能用于描述系统业务流程。B. 活动图由一系列的动
35、作状态构成 , 动作的状态控制可以从一个状态流 向另一个与之相邻的状态。C. 活动图还可以表示决策、条件、动作状态的并行执行、消息的规范说明等内容。D. 协作图可以用来描绘系统业务流程。16. 在一个“图书管理系统”中,借书处理和还书处理都需要先通过身份验证。那么,用例“借书处理”、“还书处理”与用例“身份验证”之间是()关系A. 特化B. 泛化C. 使用D. 扩展17. ()就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示 系统中软件和硬件的物理架构。A. 对象图B. 类图C. 组件图D. 配置图18. 阅读图例,判断下列哪个说法是错误的。()A. 读者可以使用系统的还书
36、用例B. 每次执行还书用例都要执行图书查询用例C. 执行还书用例有可能既执行图书查询用例,又执行交纳罚金用例D. 每次执行还书用例都要执行交纳罚金用例19. ()描述了一组交互对象间的动态协作关系,它表示完成某项行为操作的参与对象 和这些对象之间传递消息的时间顺序。A. 协作图 B. 序列图 C. 对象图 D. 组件图20. ()能够更好地用于对数据库建模。A.传统的ER图B. UML的用例图C . UML的类图D.数据流图二、填空题(每空1分,共20分)1. 面向对象开发方法模拟人们理解和处理客观世界的方式来_(1)_问题,把系统视为一系列的集合,其面向对象的 又将分析的结果映射到某种面向对
37、象 _(4)_工具的结构上,使映射过程有着比较直接的对应关系,使分析者、设计者和编程者都可使用相同的概念,从而使面向对象的软件开发能比较自然地模拟客观世界的 活动,使_(5)_空间与_(6)_空间在结构上尽可能一致。因此,采用面向对象方法 可以更有效地开发大型软件系统。面向对象方法的_(7)_、_(8)_、_(9)_态等机制不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造, 更好地克服_(10)_。因此,它已成为成熟的广为采用的软件开发方法。到20世纪末,面向对象软件工程逐渐发展成熟,特别是_(11)_的形成和广泛使用,使面向对象软件开发方法已成为软件开发的主流技术。2.
38、 UML通过9种视图来为系统建模,这9种视图是:(12) 、 (13)、( 14)(15)、 (16) 、(17) (18)、(19)、(20) 。三、写出下列程序的输出结果(满分10分)#in elude class pers on public:virtual void show() cout “ It is a person ” endl;class stude nt:public pers on public:virtual void show() cout It is a student ” show(); ps=&O2; ps-show();四、简答题(每小题 5 分,共 20 分
39、)1. 简述面向对象分析的基本步骤。2. 简述建立面向对象设计模型的方法步骤。3. 简述基于UML的面向对象系统开发方法的基本步骤。4. 简述基于UML的关系数据库设计的方法步骤。五、请用UML对图书借阅管理系统及相关的数据库系统进行分析和设计。图书管理系统应 实现图书资料和借阅信息查询、借书、 还书以及系统维护功能操作。试完成下列工作:(1)画出读者用例图( 5 分)(2) 画出“读者查询图书信息”用例的序列图和协作图(10 分)(3)画出设计类图( 10 分);(4) “读者”与“图书”类之间存在多对多的关联,试将这种关联转化为一个关联表。(5 分)2010-2011 第一学期 面向对象分
40、析与设计试题一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号 填在题干的括号内。每小题 1 分,共 20 分 )1. ( )是对具有相同属性和行为的一组对象的抽象描述。A. 实体 B. 对象 C. 类模板 D. 类2. 一类对象向另一类对象所发消息的格式中不包括( )。A. 对象名 B. 操作函数名 C. 参数表 D. 类名 3面向对象技术的三大机制不包括()。A. 抽象 B. 封装 C. 多态 D. 继承4. 从整体功能层面考虑类的设计应遵循下列三条原则,除了( )。A. 单一功能原则B.封装原则C. 最小惊讶原则D.开放 / 封闭原则5. 可以在类外访问类
41、的()。A. 私有成员B.受保护性成员C. 公有成员D.纯虚函数6. 类的( )是供创建类的实例对象时调用,完成对象的初始化。A. 内联函数 B.析构函数C. 友员函数 D. 构造函数7. 派生类可以继承 ( )。A. 私有成员B.部分公有成员C. 构造函数D.析构函数8. 如果合理地利用() , 就可以在类的复杂层次关系中为共享访问与成员隐蔽之间找到一个平衡点 , 既实现部分成员隐蔽 ,又能方便部分成员的继承,实现代码的高效重用和扩 充。A. 私有继承 B. 保护继承 C. 公有继承 D. 多继承9. 如果将某类族中的一个同名成员函数说明为虚函数,则可用( )来调用不同派生类的 虚函数,实现
42、运行时多态。A. 基类对象 B. 派生类对象C. 基类对象的指针 D. 派生类对象的指针10. C+ 中既可实现文件输入又可实现文件输出的类是( )A. ifstream B. ofstream C. iostream D. fstream11. 基类中的 protected 成员,通过 public 派生,其在派生类中的可见性为( )。A. 不可访问B. privateC. protectedD. public12.在C+程序中,对象之间的相互通信可以通过()来实现。A.继承C.封装调用成员函数函数重载13. ()阶段的主要目标是为了更精确地理解用户需求,并获得一个使用开发人员熟悉的 语言描
43、述的、易于维护且能体现系统基本结构的模型。A.系统需求分析B.系统分析C.系统设计D.系统实现14. 在面向对象程序设计语言中,()是利用可重用成分构造软件系统的最有效的特性,它不仅支持系统的可重用性,而且还有利于提高系统的可扩充性。15.() 是从用户使用系统的角度描述系统功能的图形表达方法。A16.17.(A.类图 B. 组件图 C. 用例图 用来描述实现某些服务所涉及的对象及其交互关系),可用于描绘业务流程。对象图 B. 协作图 C. 状态图)表示构成系统的代码部件及其相互之间联系的图示。 状态图 B. 协作图 C. 组件图D. 配置图(包括消息通信)的动态视图就称为D.D.活动图18.
44、 UML提供了一系列的图支持面向对象的分析与设计,其中 织结构和数据结构。A.序列图 B 协作图 C. 对象图19. ()是描述系统体系结构的静态实现视图。A .类图 B. 对象图 C. 组件图20. 使用UML进行关系数据库的 把它们映射成为关系数据库表(A.物理数据模型设计C.业务Use Case模型设计配置图)描述的是系统的静态组D.类图配置图()时,需要设计出表达持久数据的实体类及其联系,、视图(View)等。物理实现设计逻辑数据模型设计Table)B.C.D.A. 封装 B. 继承 C. 抽象 D. 引用二、填空题(每空1分,共20分)1. 用(1 )机制可以实现发送一个通用消息而调
45、用不同的方法;(2 )机制是实现信息隐蔽的一种技术,其目的是使类的(3)相互分离。2. 类是一组具有相同属性和服务的对象的抽象描述,类中的每个对象都是这个类的一个_ ( 4 ) _。类之间共享属性与服务的机制叫做_ (5 )o一个对象通过发送_ ( 6 ) _来请求另一个对象为其服务。3. 派生类的生成包含三个步骤:_( 7 )_、_( 8 )_ 和_( 9 )_ 。4. _(10)描述完成某项行为操作的参与对象和这些对象之间传递消息的时间顺序。 (11)描述系统运行过程中某类对象可能具有的状态,以及在不同状态间的跳转和触发这些跳转的外部事件。12可用于描述系统业务流程,它由一系列的动作状态构
46、成,动作的状态控制可以从一个状态流 向另一个与之相邻的状态。5. 基于UML的系统分析的主要目标是为了更精确地理解(13 ),并获得一个使用开发人员的语言描述的、易于维护的且能体现系统基本结构的_ (14 )模型。该模型主要包括 _ (15_)和(16_)。6. 基于UML的关系数据库设计一般可分为4个阶段: 丄17_、_(_18_、_(_19_)_ 和 _(_20_。三、写出下列程序的输出结果。(满分10分)class B public:B( ) cout B en dl;virtual void f( ) cout B:f en dl; virtual B( ) cout B endl;
47、;Class D: public B private:int d;public:D( ) cout D endl; void f( ) cout D:f en dl; virtual D( ) cout D f();delete pB;四简答题(每小题4分,共20分)1. 为什么面向对象方法能更有效地克服软件危机2. 如何实现运行时多态3. 基于UML勺面向对象系统开发方法包括哪几步4. 简述确定分析类的方法。5. 简述基于UML的数据库系统分析和设计的步骤。五分析与设计题试用UML对开放式学籍管理系统及相关的数据库系统进行分析和设计。学籍管理系统的主要用户是系统管理员和学生:系统管理员使用学
48、籍管理系统来实现教师信息管理、学生信息管理,课程管理、成绩管理和打印报表;学生使用学籍管理系统来实现选课管理和成绩查询。试完成下列工作:(1) 画出学籍管理系统的用例图;(6分)(2)定义学籍管理系统的三个基本分析类;(6分)(3)画出学籍管理系统的类图;(6分)(4) 画出学生查询成绩的活动图;(6分)(5) 学生类和课程类之间存在多对多的关联,试将这种关联转化为关系数据库模式。(6 分)2010-2011第二学期面向对象分析与设计试题A卷、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共20分)1.面向对象分析与设计是面向对象软件开
49、发过程中的两个重要阶段,F列活动中,属于面向对象分析阶段。A.构建分析模型B.识别分析类 C .用例动态建模D.评估分析模型可看成是属性数据以及这些属性数据上的专用操作的封装体。 类 C. 类模板 D. 对象组具有相同属性和相同操作的对象的集合,类中的每个对象都是这个类的一个2. 在面向对象方法中,A.实体 B.3. 类是OA.实体 B.实例 C. 用例D.组件4. 一个对象通过发送A.参数5. 类之间共享属性和操作的机制称为A.抽象 B. 封装 C.多态 D.继承6. 类的设计应遵循三条基本原则。对于一个设计并实现好的类,如果需要功能上的扩充, 一般来说应该通过添加新类实现,而不是修改原类的代码。这种原则叫A.封装原则B.开放/封闭原则C.最小惊讶原则D.单一功能原则一个类的_A.私有成员C.公有成员当对象离开其有效范围,或被清除时,A.静态成员函数 B. 友员函数是实现“一种接口,多种方法”A.抽象 B. 封装 C.10.如果某基类的一个成员函数被说明为数实现。A.内联函数 B.静态函数来请求另一对象为其服务。B. 消息C. 成员函数名D.接口函数名7.8.9.B.C.D.D.只能被类的成员函数、友元函数及派生类的成员函数所访问。受保护性成员纯虚函数将被调用来释放对象所占用的内存。C.构造函数D. 析构函数的技术。多态 D.继承,则该成员函数在派生类中可以有不同的函
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 方形盒的课程设计
- 新能源专业课程设计
- 斜齿轮如何画课程设计
- 斗笠式刀库课程设计
- 数据库的微课程设计
- 数字油画早教课程设计
- 敬业和乐业课程设计
- 敦煌莫高窟研究报告
- 敦煌壁画临摹 课程设计
- 教资科目二小学课程设计
- 学习弘扬劳模工匠精神
- 【超星尔雅学习通】女性学:女性精神在现代社会中的挑战网课章节答案
- RoHS检测报告完整版
- 安徽绿沃循环能源科技有限公司12000t-a锂离子电池高值资源化回收利用项目(重新报批)环境影响报告书
- 2022年陕西省中考语文试卷含答案
- 原油电脱水处理技术
- 脊柱脊髓疾病的MRI诊断
- 《底层逻辑》读书笔记
- 红楼梦81至100回读书笔记3篇
- 部编版八年级历史上册《第12课 新文化运动》课件
- 学术毕业论文的选题及写作课件
评论
0/150
提交评论