ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:431.67KB ,
资源ID:25775777      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/25775777.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(面向对象分析与设计复习题昆明理工大学.docx)为本站会员(b****9)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

面向对象分析与设计复习题昆明理工大学.docx

1、面向对象分析与设计复习题昆明理工大学面向对象分析与设计习题一、单项选择题1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是(D)的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。A. Simula67语言 B. Smalltalk语言 C. Java语言 D.统模语言(UML)的标准2.面向对象的运动产生了多种面向对象的语言, 其中(C)是一种混合性面向对象语言,既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普与。A. Smalltalk B. EiffelC.C+ D.

2、 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) 是表达系统类与其相互联系的图示,它是面向对象设计的核

3、心,建立状态图、协作图和其他图的基础。 A对象图B.组件图C.类图D.配置图8.(D)描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。 A对象图 B. 协作图 C. 状态图 D.序列图9.(D)就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示系统中软件和硬件的物理架构。 A.组件图 B. 协作图 C. 状态图 D.配置图10. 使用UML进行关系数据库的(B)时,需要设计出表达持久数据的实体类与其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。 A. 业务UseCase模型设计B.逻辑数据模型设计C. 物理

4、数据模型设计 C. 物理实现设计11.一个设计得好的OO系统具有(B)A. 低聚、低耦合的特征 B. 高聚、低耦合的特征C. 高聚、高耦合的特征 D. 低聚、高耦合的特征12.下面()不是UML的基本构成元素。(A)A. 控制语言 B. 基本构造块 C. 规则 D. 公共机制13. 面向对象的特点主要概括为(C)。A. 可分解性、可组合性、可分类性 B. 继承性、封装性、多态性C. 抽象性、继承性、封装性、多态性D. 封装性、易维护性、可扩展性、可重用性14构成对象的两个主要因素是(A)。A. 属性和服务 B. 标识和容 C. 继承和多态 D. 消息和封装15.下列关于面向对象方法中描述中错误

5、的是(C)。A. 使用设计模式有助于在软件开发中应用面向对象技术B. 选择面向对象程序设计语言时需要考虑开发人员对其的熟悉程度C. UML作为一种可视化建模语言需要与RUP开发过程同时使用D. 目前在软件生命周期的分析、设计、实现和测试中均可以应用面向对象方法16. 顺序图主要可以为设计人员提供(A)信息。A.消息发送的顺序B.某个方法的执行流程C.类之间关联关系的多重性D.某个对象在不同状态之间的转移17. 类和接口的关系类似于下面哪种类型的关系(D)。A. 关联(association)和聚集(aggregation)B. 关联(association)和组合(composition)C.

6、 脚本(scenario)和用例(use case)D. 包(Package)和子系统(subsystem)18. 在类图中,那个类图中的类Order所生成的代码具有Public class OrderPublic Customer recipient;的形式?(A)A. B. C. D. 19. 下面那个图符表示UML中的实现关系?(C)A. B. C. D. 20. 一个银行业务系统采用如图琐事的配置图,则错误的是(D)A. 与GUI有关的类应该部署在Branch Client上B. 这个图表示一个三层的体系结构,不管Branch Client、Financial App Server、D

7、atabase Server是运行在同一台机器上还是在不同机器上C. 为了系统的可伸缩性(scalability),与业务逻辑有关的对象应该部署在Financial App Server上D. 为了系统的可伸缩性,与业务逻辑有关的对象应该部署在Branch Client上21. 关于用例与类的对比中(D)是错误的。 A 都属于模型结构元素 B 都存在继承关系 C 类描述系统的部分静态视图,用例描述系统动态的行为视图D类描述的是系统的部构成,用例也可以描述系统的部构成22. Innovation公司正在为Rose开发插入件,使得Rose可以把OOA、OOD模型以各种图形格式导出,如JPEG格式、

8、BMP格式、GIF格式等。在导出时,会根据不同的算法来生成相应的图形文件,这些算法很复杂。为了描述这些算法,在下面这些图中,那个是最适合的?(A)(注:活动图可以用来描述细节)A. 活动图 B. 状态图 C. 类图 D. 用例图23. 计算机(Computer)由中央处理器、存、软盘、硬盘、显示器、键盘、鼠标等组成。那么Computer类和其他类(CPU、RAM、FloppyDrive、HardDisk、Monitor、Keyboard、Mouse)之间的关系是:(D)A. 泛化关系(Generalization) B. 实现关系(Realization)C. 包含关系(Inclusion)

9、D. 聚集关系(Aggregation)24. 在状态图中不能表示下面那些概念?(D)A. 动作(action) B. 事件(event) C. 转移(transition) D. 类(class)25.在数据库设计的阶段开始考虑具体的数据库管理系统(DBMS)的特性。(C)A. 需求分析 B. 概念设计 C. 逻辑设计 .D 物理设计26在UML中,有3种基本构造块,分别是(A)A.事物、关系和图B.注释、关系和图C.事物、关系和结构D.注释、关系和结构27在UML中,有四种关系,下面哪个不是(B)A.依赖关系B.继承关系C.泛化关系D.实现关系28下面哪个不是UML中的静态视图()A.状态

10、图B.用例图C.对象图D.类图29在用例之间,会有三种不同的关系,下列哪个不是它们之间可能的关系(D)A.包含(include)B.扩展(extend)C.泛化(generalization)D.关联(connect)30用例(Use-case)用来描述系统在事件做出响应时所采取的行动。用例之间是具有相关性的。在一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户是否正确。那么,用例“创建新订单”、“更新订单”与用例“检查用户”之间是(B)关系A.扩展(extend)B.包含(include)C.分类(classification)D.聚集(aggregation)31UML中类的有三

11、种,下面哪个不是其中之一(B)A.实体类B.抽象类C.控制类D.边界类32阅读图例,判断下列哪个说法是错误的。(c)A.读者可以使用系统的还书用例B.每次执行还书用例都要执行图书查询用例C.每次执行还书用例都要执行交纳罚金用例D.执行还书用例有可能既执行图书查询用例,又执行交纳罚金用例 33关于协作图的描述,下列哪个不正确(B)A.协作图作为一种交互图,强调的是参加交互的对象的组织;B.协作图是顺序图的一种特例C.协作图中有消息流的顺序号;D.在ROSE工具中,协作图可在顺序图的基础上按“F5”键自动生成;34. 设计模式具有的优点(a)。 A适应需求变化 B.程序易于理解 C减少开发过程中的

12、代码开发工作量 D.简化软件系统的设计35. 设计模式一般用来解决什么样的问题(a)。 A.同一问题的不同表相 B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是36. 设计模式的两大主题是(d)。 A.系统的维护与开发 B 对象组合与类的继承 C.系统架构与系统开发D.系统复用与系统扩展37. 以下哪些问题通过应用设计模式不能够解决 。(c) A)指定对象的接口 B)针对接口编程 C)确定软件的功能都正确实现 D)设计应支持变化38. 外观模式的作用是(b)。 A当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些额外的功能。 B为了系统中的一组功能调用提供一个一致的接口,

13、这个接口使得这一子系统更加容易使用。 C保证一个类仅有一个实例,并提供一个访问他的全局访问点。 D在方法中定义算法的框架,而将算法中的一些操作步骤延迟到子类中实现。39. Faade(外观)模式的意图是(a)。 A. 希望简化现有系统的使用方法。你需要定义自己的借口。 B将一个无法控制的现有对象与一个特定借口相匹配。 C. 将一组实现部分从另一组使用它们的对象中分离出来。 D你需要为特定的客户(或情况)提供特定系列的对象。40. Adapter(适配器)模式的意图是(B)。 A. 希望简化现有系统的使用方法。你需要定义自己的借口。 B将一个无法控制的现有对象与一个特定借口相匹配。 C. 将一组

14、实现部分从另一组使用它们的对象中分离出来。 D你需要为特定的客户(或情况)提供特定系列的对象。41. 下面不属于创建型模式的有(C)。 A抽象工厂模式( Abstract Factory ) B工厂方法模式(Factory Method) C适配器模式 (Adapter) D单例模式(Singleton)42. 将一个类的接口转换成客户希望的另一个接口。这句话是对下列哪种模式的描述(C)。 A. 策略模式(Strategies) B桥接模式(Bridge) C适配器模式(Adapter) D单例模式(Singleton)43. 以下关于结构型模式说法不正确的是 。(B) A)结构型模式可以在不

15、破坏类封装性的基础上,实现新的功能。 B)结构型模式主要用于创建一组对象。 C)结构型模式可以创建一组类的统一访问接口。 D)结构型模式可以在不破坏类封装性的基础上,使得类可以同不曾估计到的系统进行交互。44. 关于继承表述错误的是:(D)。 A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。 B.泛化类(超类)可以显式地捕获那些公共的属性和方法。特殊类(子类)则通过附加属性和方法来进行实现的扩展。 C.在一定意义上说破坏了封装性,因为这会将父类的实现细节暴露给子类。 D.继承本质上是“白盒复用”,对父类的修改,不会影响到子类。45. 在不破坏类封装性的基础上,使得类可以同不

16、曾估计到的系统进行交互。主要体现在(D )。 A外观模式(Facade) B装饰模式(Decorator) C策略模式(Strategies) D桥接模式(Bridge)46. 行为类模式使用(B)在类间分派行为。 A接口 B继承机制 C对象组合 D委托47. 下面的类图表示的是哪个设计模式?(D)。 A抽象工厂模式(Abstract Factory) B观察者模式(Observer) C策略模式(Strategies) D桥接模式(Bridge)48. Bridge(桥接)模式的意图是(C)。 A. 希望简化现有系统的使用方法。你需要定义自己的借口。 B将一个无法控制的现有对象与一个特定借口

17、相匹配。 C. 将一组实现部分从另一组使用它们的对象中分离出来。 D你需要为特定的客户(或情况)提供特定系列的对象。49. 静态工厂的核心角色是(A)。 A.抽象产品 B.具体产品 C.静态工厂 D.消费者50. 以下属于创建型模式的是(A)。 A抽象工厂模式(Abstract Factory) B 装饰模式(Decorator) C外观模式(Facade) D桥接模式(Bridge)51. 下面的类图表示的是哪个设计模式?(A)。 A抽象工厂模式 B观察者模式 C 策略模式 D桥接模式52. Abstract Factory(抽象工厂)模式的意图是(D)。 A. 希望简化现有系统的使用方法。

18、你需要定义自己的借口。 B将一个无法控制的现有对象与一个特定借口相匹配。 C. 将一组实现部分从另一组使用它们的对象中分离出来。 D提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类53. 在根据不同的机器选择设备驱动程序的案例中,以下叙述不准确的是(D)。 A. 可以使用switch语句选择驱动程序. B. 可以使用继承来实现选择驱动程序,但它可能会产生类组合爆炸问题. C. 可以选择抽象工厂模式实现,且能避免组合爆炸问题. D. 使用继承的解决方案要比switch语句有更多的优势.54. 应用设计模式的一个优点是(A)。 A适应需求变化 B.程序易于理解 C减少开发过程中的

19、代码开发工作量 D.简化软件系统的设计55. 当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用(A)模式。 A.创建型 B.结构型 C行为型 D.以上都可以56. 在观察者模式中,表述错误的是(C)。 A.观察者角色的更新是被动的。 B.被观察者可以通知观察者进行更新 C.观察者可以改变被观察者的状态,再由被观察者通知所有观察者依据被观察者的状态进行。 D.以上表述全部错误。57. 下面的类图表示的是哪个设计模式?(D)。 A 策略模式(Strategies) B 装饰模式(Decorator) C 桥接模式(Bridge) D 观察者模式(Observer)58. 当我们想创建一

20、个具体的对象而又不希望指定具体的类时,可以使用(A)模式。 A.创建型 B.结构型 C行为型 D.以上都可以59. 下列模式中,属于行为模式的是(B)。 A.工厂模式 B观察者 C适配器 D 以上都是60. Observer模式不适用于(D)。 A当一个抽象模型存在两个方面,其中一个方面依赖于另一方面,将这二者封装在独立的对象中以使它们可以各自独立的改变和复用。 B当对一个对象的改变需要同时改变其他对象,而不知道具体有多少个对象有待改变时。 C当一个对象必须通知其它对象,而它又不能假定其它对象是谁,也就是说你不希望这些对象是紧耦合的。 D一个对象结构包含很多类对象,它们有不同的接口,而想对这些

21、对象实施一些依赖于其具体类的操作。二、判断题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

22、getName()方法之间的关系图2 活动图6. 如图2所示,活动Gesture和Stream audio可以并发进行。(T)7. 一个软件系统,如果只有源代码,缺乏其他相应的辅助文档,如缺乏顺序图和类图,则可以利用Rose进行逆向工程得到顺序图和类图,但得到的顺序图和类图会比较简单。(F)8. CMM描述了五个级别的软件过程成熟度,即初始级、可重复级、已定义、已管理级、优化级。(T)9. UML由用例视图、物理视图、组件视图、进度视图和配置视图组成。(F)10. 在设计类图时,可以不用对类图中的每个关联进行命名,但如果需要命名的话,最好用一个“动词”给关联命名。(T)11. 适配器模式属于创

23、建型模式。(F)12. 在设计模式中,“效果”只是指“原因和结果”。(T)13. 设计模式使代码编制不能真正工程化。(F)14. 设计模式的两大主题是系统复用与系统扩展。(T)15. Faade(外观)模式不仅可以为方法调用创建更简单的接口,还可以减少客户必须处理的对象数量。(T)16. 外观模式,当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些额外的功能。(F)17. Faade模式为子系统中的一组接口提供的界面可能不一致。(F)18. Faade外观模式只能为方法调用创建更简单的接口,不能减少客户必须处理的对象数量。(F)19. 对象适配器模式是合成聚合复用原则的典型应用。(T

24、)20. Adapter模式使原本由于接口不兼容而不能一起工作的那些类可以一起工作。(T)21. Faade模式和Adapter模式是相同类型的包装器。(F)22. Adapter模式不是必须针对某个接口进行设计。(F)23. 继承本质上是“白盒复用”,对父类的修改,不会影响到子类。(F)24. 继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。(t)25. 抽象工厂模式提供了一系列相关或相互依赖对象的接口且必须指定他们具体的类。(F)26. Abstract Factory(抽象工厂)模式确保系统总能根据当前的情况获得合适的对象。(T)27. 在Abstract Factory

25、(抽象工厂)模式中,客户对象不需要知道“向谁请求需要的对象”“如何使用这些对象”。(F)28. Decorator(装饰)模式的意图是为一个对象连接附加的职责。(F)29. 每个Decorator对象在被装饰的功能之前或之后执行自己的附加功能。(T)30. Decorator(装饰)模式适用性是表示对象的部分-整体层次结构。(F)三、填空题1.面向对象开发方法一改过去传统的以_功能分析_为基础的_面向过程_的结构化分析与设计方法,它模拟人们理解和处理客观世界的方式来分析问题,把系统视为一系列_对象_的集合,其_面向对象的设计_又将分析的结果映射到某种面向对象实现工具的结构上,使映射过程有着比较

26、直接的对应关系,使分析者、设计者和编程者都可使用相同的_概念_,从而使面向对象的软件开发能比较自然地模拟客观世界的活动,使问题描述空间与_解空间_在结构上尽可能一致。因此,采用面向对象方法可以更有效地开发大型软件系统。面向对象方法的_封装_、_继承_、_多态_等机制不仅支持软件复用,而且使软件维护工作可靠有效,可实现软件系统的柔性制造,更好地克服_软件危机_。因此,它已成为成熟的广为采用的软件开发方法。2. 对象是客观实体的抽象表示,是由_描述对象属性的数据_和_对这些数据进行的操作行为_两部分组成。而_类_是对具有相同属性和行为的一组对象的抽象描述。因此,它可作为一种用户自定义类型和创建对象

27、的样板,而按照这种样板所创建的一个个具体对象就是类的_实例_。通过_继承_关系又可形成一种类层次结构。3. UML中用于描述系统的静态建模的视图称为静态视图,包括_用例图_、_类图_、_对象图_、_包图_和_构件图_。4. UML 从不同的视角为系统架构建模,可产生九种视图:_、_、_、_、_、_、_、_、_。5. _是用来反映若干个对象之间动态协作关系的一种交互图。它主要反映对象之间已发送消息的先后次序和对象之间的交互过程。_是用来描述实现某些服务所涉与的对象与其相互之间的关系(包括消息通信)的动态视图。建模者可以选择_来反映对象之间的协作关系;如果需要强调时间和序列,最好选择_;如果需要强

28、调上下文相关,最好选择_。6. 适配器模式,分为类的适配器和对象的适配器两种实现。其中类的适配器采用的是继承关系,而对象适配器采用的是(组合聚合 )关系。7. Adapter模式有两种类型有 :对象Adapter模式、(类Adapter模式)。8. UML是一种用来创建(程序模型)的图像语言。9. ( Adapter适配器 )模式使原本接口不兼容而不能一起工作的类可以一起工作。10. 适配器模式,分为类的适配器和对象的适配器两种实现。其中类的适配器采用的是(继承)关系,而对象适配器采用的是组合聚类关系。11. 在存在继承关系的情况下,方法向(超类方向)集中,而数据向(子类)方向集中。12. 在

29、进行设计以应对变化的过程中,应该遵循两条基本策略:找出变化并(封装变化点);优先使用对象组合,而不是类继承。13. 封装性好的代码更容易测试,因为它与其他代码没有(耦合)。14. (抽象工厂)模式提供了一系列相关或相互依赖对象的接口而无需指定他们具体的类。15. 工厂模式分为简单工厂,工厂方法,( 工厂方法)三种类型。四. 简答题1. 简述面向对象软件开发方法的优点。2. 简述面向对象技术的三大机制。答:(1)封装性(encapsulation)所谓封装就是把对象的属性和行为结合成一个独立的单位,使外界不能直接访问或修改这些数据和代码,外界只能通过对象提供的接口函数来改变或获取对象的属性数据,

30、这就实现了消息隐蔽。(2)继承性如果在一个已定义的类上,增加一些特殊属性或操作,可以形成一个新的类,这个类不仅继承了前一个类的全部特征,而且具有新的特性,因此可看作前一个类的特例,是对前一个类的继承。前一个类称为父类,新产生的类叫做子类。通过继承关系可形成一种类层次结构,叫做继承结构。(3)多态性在类层次结构的不同类中,可用相同的函数名实现功能不同的函数。3. 简述OOA模型的层次结构。答:OOA模型采用五层次结构,它们分别是:(1)对象-类层划分待开发系统与其环境信息的基本构造单位,标出反映问题域的对象和类,并用符号进行规的描述,用信息提供者熟悉的术语为对象和类命名。(2)属性层定义对象和某些结构中的数据单元,继承结构中所有类的公共属性可放于通用类中。标识对象类必需的属性并放在合适的继承层次上,属性的特殊限制和实例连接关系也应标识出来。(3)服务层表示对象的服务或行为,即是要定义类

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1