面向对象分析与设计试题及其答案
面向对象分析与设计练习题含答案
三、写出下列程序的输出结果。 ( 满分 10 分 ) #include <iostream.h> #include <string.h> class Person {
2. 对象是客观实体的抽象表示,是由____数据_________和______对数据的操作______ 两部分组成。而 _类___是对具有相同属性和行为的一组对象的抽象描述。因此,它 可作为一种用户自定义类型和创建对象的样板,而按照这种样板所创建的一个个具体对 象就是类的__实例____。通过___继承__关系又可形成一种类层次结构。
(3)服务层:表示对象的服务或行为,即是要定义类上的操作。 (4)结构层:标识现实世界中对象之间的关系。当一个对象是另一个对象的一部分时,
用"整体-部分"关系表示;当一个类属于另一个类时,用类之间继承关系 表示。
(5)主题层:可将相关类或对象划分为一个主题。 4. 简述 OOD 模型的总体结构,并画图表示。
5. 关于面向对象方法的优点,下列不正确的叙述是 ( C )。
A. 与人类习惯的思维方法比较一致
B. 可重用性好
C. 以数据操作为中心
D.可维护性好
6.(D )是从用户使用系统的角度描述系统功能的图形表达方法。
A. 类图
B. 对象图
C. 序列图
D. 用例图
7. (C ) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建立状态图、协作图
Student(char *s, float g):Person(s) { avg=g; } void print(char *s) { cout<<s<<”My name is “<<name<<”and my grade is”<<avg<<endl; } 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
面向对象分析与设计试题及其答案
面向对象分析与设计试题 B 卷一、单项选择题 (在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号 填在题干的括号内。
每小题 2分,共20分)1. 到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是()的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。
A. Simula67 语言 B. Smalltalk 语言C. Java 语言D.统一建模语言(UML )的标准2. 面向对象的运动产生了多种面向对象的语言,其中()是一种混合性面向对象语言,既支持面向过程的程序设计方法,又支持面向对象的程序设计方法, 有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。
A. Smalltalk B. EiffelC. C++D. Java3 •下列不属于面向对象技术的基本特征的是()。
A.封装性B.模块性C.多态性D.继承性4.面向对象程序设计将描述事物的数据与()封装在一起,作为一个相互依存、不可分割 的整体来处理。
A.信息B.数据隐藏C.对数据的操作D.数据抽象5.关于面向对象方法的优点,下列不正确的叙述是()。
A.与人类习惯的思维方法比较一致 B.可重用性好 C.以数据操作为中心D.可维护性好6. ()是从用户使用系统的角度描述系统功能的图形表达方法。
8. ()描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之 间传递消息的时间顺序。
A .对象图B.协作图C.状态图D.序列图9. ()就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示系统中软件和硬件的物理架构。
A.组件图B.协作图C.状态图D.配置图10. 使用UML 进行关系数据库的( )时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表( Table )、视图(View )等。
A.业务Use Case 模型设计 B.逻辑数据模型设计 C.物理数据模型设计C.物理实现设计、填空题(每空1分,共20分)A.类图B.对象图7.()是表达系统类及其相互联系的图示 和其他图的基础。
面向对象分析与及设计习题及答案
面向对象分析与及设计习题及答案一、单项选择题1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是(D)的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。
A. Simula67语言B. Smalltalk语言C. Java语言D. 统一建模语言(UML)的标准2. 面向对象的运动产生了多种面向对象的语言, 其中(C)是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。
A. SmalltalkB. EiffelC. C++D. Java3.下列不属于面向对象技术的基本特征的是(B)。
A. 封装性B. 模块性C. 多态性D. 继承性4. 面向对象程序设计将描述事物的数据与(C) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点,下列不正确的叙述是(C)。
A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好6. (D)是从用户使用系统的角度描述系统功能的图形表达方法。
A. 类图B. 对象图C. 序列图D. 用例图7. (C) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建立状态图、协作图和其他图的基础。
A.对象图 B. 组件图 C. 类图 D. 配置图8.(D)描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。
A.对象图 B. 协作图 C. 状态图 D. 序列图9.(D)就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示系统中软件和硬件的物理架构。
A. 组件图B. 协作图C. 状态图D. 配置图10. 使用UML进行关系数据库的(B)时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。
面向对象系统分析与设计试卷与答案
面向对象分析与设计试题B卷一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号。
每小题1 分,共20 分)3.下列不属于面向对象技术的基本特征的是()。
A. 封装性B. 模块性C. 多态性D. 继承性4. 面向对象程序设计将描述事物的数据与( ) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点,下列不正确的叙述是()。
A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好8. 下列不属于类的成员函数的是( )。
A. 构造函数B. 析构函数C. 友元函数D. 拷贝构造函数9. 继承机制的作用是( )。
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)等。
面向对象分析与设计试题B卷及答案
面向对象分析与设计试题B卷及答案面向对象分析与设计试题(2011.12)一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号写在答题纸上。
每小题 1 分,共20 分)1.下列活动中,__C___ 属于面向对象设计阶段。
A.构建用例模型 B.识别分析类C.用例动态建模 D.绘制组件图2.面向对象方法认为客观世界是由各种各样的事物或实体组成,每个事物或实体都可用一个___D__来表示。
A. 实例B. 类C. 类模板D. 对象3. __B___可作为一种用户自定义类型来创建对象。
A. 实体B. 实例C.类D. 类模板4. __B___是对象之间的通信机制。
A. 成员函数B. 消息C. 参数表D. 友元函数5._D_____是实现“一种接口,多种方法”的机制。
A. 抽象B. 封装C. 多态D. 继承6. 下列原则中,__B____不是类的设计应遵循的三条基本原则之一。
A. 封装原则B. 开放/封闭原则C. 最小惊讶原则D. 单一功能原则7. 一个类的友元函数可以访问该类中的__B____。
A. 私有成员B. 受保护性成员C. 公有成员D. 所有成员8. 当要创建对象时,__D____将被调用来为对象做初始化。
A. 静态成员函数B. 友员函数C. 构造函数D.析构函数9. ___C___是实现“一种接口,多种方法”的技术。
A. 抽象B. 封装C. 多态D. 继承10. 如果某基类的一个成员函数被说明为___D___,则该成员函数在派生类中可以有不同的函数实现。
A. 内联函数B. 静态函数C. 友元函数D. 虚函数11. 在二进制模式下,可利用文件输入/输出流类中定义的__C____函数将所有数据以字符形式存储到文件里。
A. loadB. saveC. writeD. read12. 基类中的public 成员,通过protected派生,其在派生类中的可见性为___D___。
A. privateB. 不可访问C. publicD. protected13. __D____是数据类型抽象化或参数化的类。
uml《面向对象的分析与设计》考题与答案
uml《⾯向对象的分析与设计》考题与答案《⾯向对象的分析与设计》练习题⼀、选择题1.UML 语⾔不⽀持的建模⽅式有(D )。
A. 静态建模B.动态建模C. 模块化建模D. 功能建模2.⼀个设计得好的OO系统具有( B )。
A. 低内聚、低耦合的特征B.⾼内聚、低耦合的特征C. ⾼内聚、⾼耦合的特征D.低内聚、⾼耦合的特征3.下列不属于⾯向对象技术的基本特征的是(B)。
A. 封装性B. 模块性C. 多态性D. 继承性4. ⾯向对象程序设计将描述事物的数据与( C ) 封装在⼀起,作为⼀个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于⾯向对象⽅法的优点,下列不正确的叙述是(C )。
A. 与⼈类习惯的思维⽅法⽐较⼀致B. 可重⽤性好C. 以数据操作为中⼼D.可维护性好6.⽤例之间的关系不包括以下哪种关系?DA.泛化B.包含C. 扩展D. 聚集和组合7.顺序图中不包括以下哪种元素?(A)A.⽤例B. 对象C. ⽣命线D. 消息8. ⽤例图中不包括以下哪种元素?(B)A. ⽤例B. 类C. 参与者D. 关联9. 继承机制的作⽤是( C )。
A. 信息隐藏B. 数据封装C. 派⽣新类D. 数据抽象10. ⾯向对象⽅法学中,对象之间仅能通过(C)相联系。
A. 类B.抽象C. 消息D. 封装11. 脚本与⽤例之间的关系类似与(A)之间的关系。
A. 对象与类B. 参与者与⽤例C. 顺序图和抽象类D. 消息和对象12. 下列元素中,(D )不属于消息的组成。
A. 提供服务的对象B. 服务C. 输⼊信息D. 事件13. (D )描述了⼀组交互对象间的动态协作关系,它表⽰完成某项⾏为的对象和这些对象之间传递消息的时间顺序。
A.对象图 B. 协作图 C. 状态图 D. 顺序图14. (D)是从⽤户使⽤系统的⾓度描述系统功能的图形表达⽅法。
A. 类图B. 对象图C. 序列图D. ⽤例图15. ( C ) 是表达系统的类及其相互联系的图⽰,它是⾯向对象设计的核⼼,建⽴状态图、协作图和其他图的基础。
面向对象分析与设计(试卷及答案)
27
28
29
30
1.SDLC需求分析阶段结束时将产生哪个文档()。
A.可行性分析报告B.软件需求说明书
C.软件需求统计D.系统需求统计
2.面向对象将描述事物的数据与()封装在一起,作为一个相互依存,不可分割的整体来处理。
A.信息B.数据隐藏
C.数据操作D.数据抽象
3.()是从用户使用的角度描述系统功能的图形表示方法。
FTFFTFFTFF
三、简答题(共20分)
1.请列举类关系图中的各种关系,并画出其UML图形表示。(5分)
答:类关系图中主要存在组合、聚合、泛化、实现四种关系
组合:
聚合:
泛化:
实现:
2.仔细阅读下图,写出你能从图中获取的所有信息。(10分)
1.系统采用.net 2003开发,Oracle9i数据库,采用数据库访问技术。
A.自消息B.创建(create)消息
C.返回消息D.销毁(destroy)消息
22.关于度量类关系图的复杂度的因素,以下哪种说法不正确()
A.类的大小B.类间的关系数
C.类属性和操作的可见性D.以上说法都不正确
23.一软件过程包含9000组件,计划2个月完成其中5000个,在实际完成过程中持续时间为3个月,则调整因子为()
2.根据要求画出顺序图(20)
用户登录系统,首先要和登录窗口交互,输入用户名和密码。登录窗口负责和服务器交互,将用户输入的用户和密码发送到服务器,服务器再与数据库交互,以验证用户名和密码的有效性,如果验证成功,则返回OK,验证失败返回Error。服务器将通过登录窗口将信息显示给用户。
《面向对象分析与设计》
C. D.
10.下图表示类图的()
面向对象分析与设计试题答案
课程考试参考答案与评分标准一、单项选择题一、单项选择题 ( ( 每小题每小题每小题 1 1 分,共分,共分,共 20 20 分 ) 1.D 2. B 3.B 4.C 5. D 6. C 7.D 8.C11.B 12.B 13.B 14.D 15. D 16. C 17.D 18. C 19. C 二、填空题二、填空题 ( ( 每空每空每空 1 1 分,共分,共分,共 20 20 分 ) 1、抽象、抽象 2 2、基础结构、基础结构、基础结构 3 3、用况、用况 4 4、对象5、类、类 6、属性7、继承8、聚合9、参与者1010、模型元素、模型元素、模型元素 三、三、. . 简答题(每小题6分,共30分)分) 1. 简述面象对象有哪些特点?简述面象对象有哪些特点?以面向对象的分析为基础、一般不依赖于结构化分析。
(3分)分) 与相应的OOA 方法共同构成一种OOA&OOD 方法体系。
(1分)分) 较全面地体现了面向对象方法的概念与原则。
(2分)分)大多数OOD 方法独立于编程语言,但具体应用OOD 时,则要考虑特定的编程语言。
2. 简述面向对象技术的三大机制。
简述面向对象技术的三大机制。
答:(答:(11)封装性)封装性(encapsulation) (encapsulation)所谓封装就是把对象的属性和行为结合成一个独立的单位,使外界不能直接访问或修改这些数据和代码,外界只能通过对象提供的接口函数来改变或获取对象的属性数据,这就实现了消息隐蔽。
(取对象的属性数据,这就实现了消息隐蔽。
(22分)分) (2)继承性)继承性如果在一个已定义的类上,如果在一个已定义的类上,增加一些特殊属性或操作,增加一些特殊属性或操作,增加一些特殊属性或操作,可以形成一个新的类,可以形成一个新的类,这个类不仅继承了前一个类的全部特征,这个类不仅继承了前一个类的全部特征,而且具有新的特性,而且具有新的特性,而且具有新的特性,因此可看作前一因此可看作前一个类的特例,是对前一个类的继承。
uml面向对象的分析与设计考题与答案
u m l面向对象的分析与设计考题与答案集团文件版本号:(M928-T898-M248-WU2669-I2896-《面向对象的分析与设计》练习题一、选择题1.UML 语言不支持的建模方式有(D )。
A. 静态建模B.动态建模C. 模块化建模D. 功能建模2.一个设计得好的OO系统具有( B )。
A. 低内聚、低耦合的特征B.高内聚、低耦合的特征C. 高内聚、高耦合的特征D.低内聚、高耦合的特征3.下列不属于面向对象技术的基本特征的是( B)。
A. 封装性B. 模块性C. 多态性D. 继承性4. 面向对象程序设计将描述事物的数据与 ( C ) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点,下列不正确的叙述是(C )。
A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好6.用例之间的关系不包括以下哪种关系?DA.泛化B.包含C. 扩展D. 聚集和组合7.顺序图中不包括以下哪种元素?(A)A.用例B. 对象C. 生命线D. 消息8. 用例图中不包括以下哪种元素?(B)A. 用例B. 类C. 参与者D. 关联9. 继承机制的作用是 ( C )。
A. 信息隐藏B. 数据封装C. 派生新类D. 数据抽象10. 面向对象方法学中,对象之间仅能通过(C )相联系。
A. 类B.抽象C. 消息D. 封装11. 脚本与用例之间的关系类似与(A)之间的关系。
A. 对象与类B. 参与者与用例C. 顺序图和抽象类D. 消息和对象12. 下列元素中,(D )不属于消息的组成。
A. 提供服务的对象B. 服务C. 输入信息D. 事件13. ( D )描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。
A.对象图 B. 协作图 C. 状态图 D. 顺序图14. ( D)是从用户使用系统的角度描述系统功能的图形表达方法。
《面向对象分析与设计》练习题及参考答案.doc
《面向对象分析与设计》练习题及参考答案一、思考题:1 ・ How many phases are in eluded in system developme nt? (brief description)2. Describe a system and the comp on ents of a system model.3. What two key comp orients distinguish an in formati on system from an automated information system?4. What is systems analysis and design?5. Who are the six stakeholder groups in information systems?6. What are a system designers and system builder's roles in information systems developme nt?7. What is the system analyst role in systems development as it related to the other stakeholders?8. List the six steps of the general problem-solving approach.9. List two types of quality certification applicable to information systems.10. What are legacy systems? Name two types of problems encountered in legacy systems.11 ・ What is ERP? What is electronic commerce?12. Differentiate between management information systems and decision support systems.13. What role dose a data warehouse play in a decision support system?14. List three focuses for an information systems・15. What is the role of the network in information systems?16. 而向过程的系统分析与设计存在的问题是什么?通过什么00技术来解决?仃•请湎图说明而向对象系统的基本构造。
面向对象系统分析与设计——超星试题及答案
第一章面向对象方法概论传统开发方法及存在的问题1【单选题】下面关于功能分解法的优点描述错误的是()A、以系统需要提供的功能为中心组织系统B、与模块化编程结合使用后,使开发效率有很大提高C、删除了GoTo语句,使软件能得到有效维护D、具有较强的应对需求变化的能力我的答案:D2【单选题】下面的开发方法能够兼顾功能和数据的是()A、功能分解法B、结构化方法C、信息建模法D、面向对象方法我的答案:D3【填空题】_______开发方法强调对数据的组织,忽略系统功能。
我的答案:第一空:信息建模法4【填空题】功能分解法是以系统需要提供的_______为中心组织系统。
我的答案:第一空:功能5【判断题】结构化方法采用数据流、加工进行建模,需求变化极易引起两者的变动,进而引起其他数据流和加工的变化。
我的答案:√6【判断题】功能分解法以功能作为系统的构造块,数据组织能力强。
我的答案:×面向对象方法的基本思想1【单选题】面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。
因此面向对象方法有许多特征,如软件系统是由对象组成的;();对象彼此之间仅能通过传递消息互相联系;层次结构的继承。
A、开发过程基于功能分析和功能分解B、强调需求分析重要性C、把对象划分成类,每个对象类都定义一组数据和方法D、对既存类进行调整我的答案:C2【单选题】一个设计良好的信息系统应具有()的特征A、低内聚、低耦合B、高内聚、低耦合C、高内聚、高耦合D、低内聚、高耦合我的答案:B3【填空题】面向对象方法通过_______ 关系表达类之间的静态关系。
我的答案:第一空:关联4【填空题】对象的_______与操作结为一体,成为一个独立不可分的实体,对外屏蔽其内部细节。
我的答案:第一空:属性5【判断题】面向对象方法比以往的方法更接近人类的日常思维方式,强调运用人类在日常的逻辑思维中经常采用的思想方法与原则。
面向对象分析与设计习题及部分答案
《面向对象分析与设计》习题及部分答案第一章 概论1.什么是面向对象方法?面向对象的基本原则主要有哪些?答:面向对象方法是一种运用对象、类、继承、封装、聚合、关联、消息、多态性等概念来构造系统的软件开发方法。
面向对象方法的解决问题的思路是从现实世界中的客观对象(如人和事物)入手,尽量运用人类的自然思维方式来构造软件系统,这与传统的结构化方法从功能入手和信息工程化方法从信息入手是不一样的。
面向对象的基本思想主要有:1)从现实世界中客观存在的事物出发来建立软件系统,强调直接以问题域(现实世界)中的事物为中心来思考问题、认识问题,并根据这些事物的本质特征,把它们抽象地表示为系统中的对象,作为系统的基本构成单位。
这可以使系统直接映射问题域,保持问题域中事物及其相互关系的本来面貌(对象)2)用对象的属性表示事物的性质;用对象的操作表示事物的行为。
(属性与操作)3)对象的属性与操作结合为一体,成为一个独立的、不可分的实体,对外屏蔽其内部细节。
(对象的封装)4)对事物进行分类。
把具有相同属性和相同操作的对象归为一类,类是这些对象的抽象描述,每个对象是它的类的一个实例。
(分类)5)复杂的对象可以用简单的对象作为其构成部分。
(聚合)6)通过在不同程度上运用抽象的原则,可以得到较一般的类和较特殊的类。
特殊类继承一般类的属性与操作,从而简化系统的构造过程及其文档。
(继承)7)对象之间通过消息进行通讯,以实现对象之间的动态联系。
(消息)8)通过关联表示类(一组对象)之间的静态关系。
(关联)2.与传统开发方法比,面向对象方法有什么优点?答:面向对象方法的解决问题的思路是从现实世界中的客观对象(如人和事物)入手,尽量运用人类的自然思维方式来构造软件系统,这与传统的结构化方法从功能入手和信息工程化方法从信息入手是不一样的。
与传统方法相比,面向对象的方法主要优点有:1)从认识论的角度可以看出,面向对象方法改变了人们认识世界的方式;2)语言的发展——鸿沟变窄;3)面向对象方法使得从问题域到计算机间的鸿沟变窄;4)面向对象方法有助于软件的维护与复用;(1)把易变的数据结构和部分功能封装在对象内并加以隐藏,一是保证了对象行为的可靠性;二是对它们的修改并不会影响其他的对象,有利于维护,对需求变化有较强的适应性。
面向对象分析与设计试题A卷及答案
面向对象分析与设计试题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)及答案
华南农业大学期末考试试卷(A卷)-答案2007学年第1学期考试科目:面向对象分析与设计考试类型:(闭卷)考试时间:120 分钟学号姓名年级专业一、判断题(每题1分,共10分。
对的标“T”,错的标“F”,将答案写入下表)1. 一个状态图最多只能由一个初态和一个终态。
(F)2. 协作图中的消息必须要有消息顺序号。
(T)3. 两个参与者(actor)之间可以有包含(include)关系、扩展(extend)关系或泛化(generalization)关系,而包含关系和扩展关系是依赖(dependency)关系的版型。
(F)4. 参与者(actor)和用例(use case)之间的关系是关联(association)关系。
(T)5. 类A和类B之间的关系如图1所示,则称类B中的getName()方法是对类A中的 getName()方法的重载(overload)。
(F)图1 getName()方法之间的关系图2 活动图6. 如图2所示,活动Gesture和Stream audio可以并发进行。
(T)7. 一个软件系统,如果只有源代码,缺乏其他相应的辅助文档,如缺乏顺序图和类图,则可以利用Rose进行逆向工程得到顺序图和类图,但得到的顺序图和类图会比较简单。
(F)8. CMM描述了五个级别的软件过程成熟度,即初始级、可重复级、已定义、已管理级、优化级。
(T)9. UML由用例视图、物理视图、组件视图、进度视图和配置视图组成。
(F)10. 在设计类图时,可以不用对类图中的每个关联进行命名,但如果需要命名的话,最好用一个“动词”给关联命名。
(T)二、单项选择题(每题2分,共30分。
将正确答案填入下表)1. 一个设计得好的OO系统具有(B)A. 低内聚、低耦合的特征B. 高内聚、低耦合的特征C. 高内聚、高耦合的特征D. 低内聚、高耦合的特征2.下面()不是UML的基本构成元素。
(A)A. 控制语言B. 基本构造块C. 规则D. 公共机制3. 面向对象的特点主要概括为(C)。
面向对象分析与设计练习题含答案
面向对象分析与设计试题B卷一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题2 分,共20 分)/* 上个世纪80年代开始至今还盛行的以Smalltalk,C++等为代表的面向对象软件开发方法(00)*/1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是(D)的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。
A. Simula67语言(20世纪70年代的Simula-67是第一个面向对象的语言)B. Smalltalk语言(80年代初的Smalltalk语言)C. Java语言(对流行的语言进行面向对象的扩充得到的语言或C++)D. 统一建模语言(UML)的标准2. 面向对象的运动产生了多种面向对象的语言, 其中(C)是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。
A. SmalltalkB. EiffelC. C++D. Java3.下列不属于面向对象技术的基本特征的是(B)。
A. 封装性B. 模块性C. 多态性D. 继承性4. 面向对象程序设计将描述事物的数据与( C ) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点,下列不正确的叙述是(C)。
A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好6.(D)是从用户使用系统的角度描述系统功能的图形表达方法。
A. 类图B. 对象图C. 序列图D. 用例图7. (C ) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建立状态图、协作图和其他图的基础。
A.对象图 B. 组件图 C. 类图 D. 配置图**8.(D)描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。
面向对象分析与设计试题A卷及答案
面向对象分析与设计试题A卷及答案面向对象分析与设计试题A卷及答案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.在类族中通过定义A.类的嵌套B.(D )来实现运行时多态。
类的继承 C. 抽象类 D.虚函数12. UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。
其中(C)不属于这类视图。
(D )是从用户使用系统的角度描述系统功能的图形表达方法。
在一个“库存管理系统”中,入库管理和岀库管理都需要检查用户帐号是否正确。
那么,用例“入库管理”、“岀库管理”与用例“检查用户帐号”之间是( 关系。
面向对象分析与设计试卷及答案
华南农业大学期末考试试卷(A卷)-答案2007学年第1学期考试科目:面向对象分析与设计考试类型:(闭卷)考试时间:120 分钟学号姓名年级专业题号一二三四五总分得分评阅人一、判断题(每题1分,共10分。
对的标“T”,错的标“F”,将答案写入下表)12345678910F T F T F T F T F T1. 一个状态图最多只能由一个初态和一个终态。
(F)2. 协作图中的消息必须要有消息顺序号。
(T)3. 两个参与者(actor)之间可以有包含(include)关系、扩展(extend)关系或泛化(generalization)关系,而包含关系和扩展关系是依赖(dependency)关系的版型。
(F)4. 参与者(actor)和用例(use case)之间的关系是关联(association)关系。
(T)5. 类A和类B之间的关系如图1所示,则称类B中的getName()方法是对类A中的 getName()方法的重载(overload)。
(F)图1 getName()方法之间的关系图2 活动图6. 如图2所示,活动Gesture和Stream audio可以并发进行。
(T)7. 一个软件系统,如果只有源代码,缺乏其他相应的辅助文档,如缺乏顺序图和类图,则可以利用Rose进行逆向工程得到顺序图和类图,但得到的顺序图和类图会比较简单。
(F)8. CMM描述了五个级别的软件过程成熟度,即初始级、可重复级、已定义、已管理级、优化级。
(T)9. UML由用例视图、物理视图、组件视图、进度视图和配置视图组成。
(F)10. 在设计类图时,可以不用对类图中的每个关联进行命名,但如果需要命名的话,最好用一个“动词”给关联命名。
(T)二、单项选择题(每题2分,共30分。
将正确答案填入下表)123456789101112131415B AC A C AD A C D D A D D C1. 一个设计得好的OO系统具有(B)A. 低内聚、低耦合的特征B. 高内聚、低耦合的特征C. 高内聚、高耦合的特征D. 低内聚、高耦合的特征2.下面()不是UML的基本构成元素。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象分析与设计试题B卷一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题 2 分,共 20 分 )1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是()的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。
A. Simula67语言B. Smalltalk语言C. Java语言D. 统一建模语言(UML)的标准2. 面向对象的运动产生了多种面向对象的语言, 其中()是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。
A. SmalltalkB. EiffelC. C++D. Java3.下列不属于面向对象技术的基本特征的是()。
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. 使用UML进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。
A. 业务Use Case模型设计B. 逻辑数据模型设计C. 物理数据模型设计 C. 物理实现设计二、填空题 ( 每空 1 分,共 20 分 )1. 面向对象开发方法一改过去传统的以___功能分析___为基础的__面向过程__的结构化分析与设计方法,它模拟人们理解和处理客观世界的方式来分析问题,把系统视为一系列__对象_的集合,其__面向对象的设计__又将分析的结果映射到某种面向对象实现工具的结构上,使映射过程有着比较直接的对应关系,使分析者、设计者和编程者都可使用相同的_概念_,从而使面向对象的软件开发能比较自然地模拟客观世界的活动,使问题描述空间与_解空间__在结构上尽可能一致。
因此,采用面向对象方法可以更有效地开发大型软件系统。
面向对象方法的_封装_、_继承_、__多态_等机制不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造,更好地克服_软件危机__。
因此,它已成为成熟的广为采用的软件开发方法。
2. 对象是客观实体的抽象表示,是由__描述对象属性的数据__和_对这些数据进行的操作行为__两部分组成。
而_类_是对具有相同属性和行为的一组对象的抽象描述。
因此,它可作为一种用户自定义类型和创建对象的样板,而按照这种样板所创建的一个个具体对象就是类的__实例__。
通过_继承__关系又可形成一种类层次结构。
3. UML中用于描述系统的静态建模的视图称为静态视图,包括_用例图__、_类图__、_对象图__、__包图__和__构件图_。
三、写出下列程序的输出结果。
( 满分 10 分 )#include <>#include <>class Person{public:Person(char *s){name=new char[strlen(s)+1];strcpy(name, s);}virtual void print(){ cout<<”My name is”<<name<<endl; }protected:char *name;};class Student:public Person{ public:Student(char *s, float g):Person(s) { avg=g; }void print(char *s){ cout<<s<<”My name is “<<name<<”and my grade is”<<avg<<endl; }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.”<<endl; }private:int publs;};void main(void){ Person *p;Person x(“Zhang”);Student y(“Wang”, 4, 2);Professor z(“Liu”, 5);p=&x; p->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)继承性如果在一个已定义的类上,增加一些特殊属性或操作,可以形成一个新的类,这个类不仅继承了前一个类的全部特征,而且具有新的特性,因此可看作前一个类的特例,是对前一个类的继承。
前一个类称为父类,新产生的类叫做子类。
通过继承关系可形成一种类层次结构,叫做继承结构。
(3)多态性在类层次结构的不同类中,可用相同的函数名实现功能不同的函数。
3. 简述OOA模型的层次结构。
答:OOA模型采用五层次结构,它们分别是:(1)对象-类层划分待开发系统及其环境信息的基本构造单位,标出反映问题域的对象和类,并用符号进行规范的描述,用信息提供者熟悉的术语为对象和类命名。
(2)属性层定义对象和某些结构中的数据单元,继承结构中所有类的公共属性可放于通用类中。
标识对象类必需的属性并放在合适的继承层次上,属性的特殊限制和实例连接关系也应标识出来。
(3)服务层表示对象的服务或行为,即是要定义类上的操作。
(4)结构层标识现实世界中对象之间的关系。
当一个对象是另一个对象的一部分时,用"整体-部分"关系表示;当一个类属于另一个类时,用类之间继承关系表示。
(5)主题层可将相关类或对象划分为一个主题。
4. 简述OOD模型的总体结构,并画图表示。
【4】答案:OOD体系结构的各个部分内容:(1)问题论域部分,在OOA模型的基础上,细化分析结果,设计一组构成底层应用模型的类和对象。
(2)人机交互部分:设计用户界面模型,该用户界面模型中的类和对象提供实现人机交互操作的接口函数。
用户界面设计包括菜单设计、窗口设计、输入/输出界面设计等等。
(3)任务管理部分:建立一些类,用以负责处理操作系统级的并发问题、中断、调度以及其它与特定平台有关的问题。
(4)数据管理部分:提供数据管理系统中存储和检索对象的基本结构,包括对永久性数据的访问和管理。
数据管理设计包括:—数据存放设计:数据存放设计选择数据存放的方式(文件存放、关系数据库表格存放或面向对象的数据库存放)。
—设计相应的操作。
为每个需要存储的对象和类增加用于存储管理的属性和操作,在类和对象的定义中加以描述。
class & object layer(类及对象层)attribute layer(类及对象层)service layer(服务层)struct layer(结构层)subject layer(主题层)图1.5 OOD模型的总体结构}五. 试用UML 对教学管理系统及相关的数据库系统进行分析和设计。
学生选课系统一般包括(1)选课管理功能;(2) 成绩管理功能。
试完成下列工作: (1)建立系统静态结构模型—画出系统用例图和类图;(10分) (2) 建立系统动态结构模型—画出系统序列图和协作图;(10分) (3)建立关系数据库逻辑模型。
(10分) 【答案:(1) 系统用例图如下学生(a)选课管理的用例图学生(b )成绩管理的用例图对象类图如下:(a)选课对象类图(b)成绩管理对象类图(2)把需要持久存储的数据实体类及其联系,映射成为如下关系数据库表:学生(学生号、姓名、出生日期、性别、籍贯、地址、电话、入学时间、专业、班级备注)教师(教师号、姓名、出生日期、性别、籍贯、地址、电话、职称、专长、备注)课程(课程号、课程名、描述、学分、学时、性质、备注)开设课程(课程号、学期、授课日期、授课时间、地点、选修人数、备注)】----------------------------------------------------------------------------------------------------------------------面向对象分析与设计试题C卷一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题 1 分,共 20 分 )1.面向对象技术的最重要的基本特征是()。
A. 抽象性B. 封装性C. 多态性D. 继承性2. 面向对象程序设计将描述事物的数据与 ( ) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象3. 关于面向对象方法的优点,下列不正确的叙述是()。
A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好4. C++ 对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是 ( )。