2019级面向对象技术复习提纲-10页文档资料
- 格式:doc
- 大小:32.00 KB
- 文档页数:10
2012级面向对象技术复习提纲概念部分1 理解面向对象的思想(封装性、继承性、多态性),作出一个简述。
2 理解多态性的概念和应用,理解动态绑定机制。
3 什么是用例图,用例图有哪些部分组成。
用例图中参与者之间的关系有哪些?用例之间的关系有哪些?4 试描述用例图在UML中的地位和作用。
5 掌握用例模型的获取方法。
6 用例之间的扩展、泛化、包含三种关系有什么异同,请分别举例说明。
7 对象与类的概念;类图有哪些元素构成?类之间的关系有哪些?掌握UML中类图的绘制方法。
8 简述类的聚合和组合关系的异同点。
9在绘制类图时,第一步就是发现类,最常用的方法是什么?请简要说明它的使用方法。
10什么是实体类、边界类和控制类?为什么将分析类划分成这三种类型。
11理解对象图的概念,对象图的适用场景以及它的优缺点。
12互图(时序图与协作图)的概念与作用,掌握其的绘制方法。
13、状态图概念与作用,掌握活动图、状态图的绘制方法。
14类的设计原则包括哪些内容?15 包图与组件图的概念,掌握包图的设计原则,包括稳定性和抽象度的衡量方法。
16掌握设计模式、软件复用的概念,掌握所介绍的各种设计模式(单实例、工厂、适配器、对象装饰、桥接、职责链、策略等)的用途,类图,以及相关实例。
综合部分17观察一部电梯的运行方式,并用状态图描述它的各种状态(简化为“第一层”、“向上运动”、“向下运动”、“等待”、“运动到第一层”五种状态)和可能转移。
18简单的数字钟包含两个按钮A和B,系统启动后进入显示时间(时、分、秒)状态。
在显示时间状态下按钮A用于切换显示时间->设置小时->设置分钟->显示时间等状态;在设置小时、设置分钟状态下按B键用于修改时间。
试画出其状态转换图。
19 用状态图描述顾客在ATM机上的操作过程。
ATM机主要包括等待顾客插入磁卡的起始状态和结束服务的终止状态,以及输入密码、选择服务类型、存款及取款等状态。
顾客插入磁卡后进入输密码状态,当密码输入正确时进入选择服务类型状态,当输入密码不正确时,停留在原状态,但如果三次不正确,服务结束。
进入选择服务类型后根据选择的不同,顾客可进入存款和取款状态。
存、取款结束后,顾客既可以选择结束服务到最终状态,也可以选择继续服务回到选择服务类型状态。
20. 信用卡可能处于“开放”和“关闭”状态,其中“开放”状态可以直接进入“关闭”状态,而从“关闭”状态必须提供密码验证才能进入“开放”状态,“开放”状态又包括“透支”和正常状态之间的变化,当剩余金额少于0,或者使用额度大于剩余金额,或者结算余额小于0时进入透支状态,反之则为正常状态。
画出信用卡的状态转换图。
21 用状态图描述航班机票预订系统,在没有任何预订时,系统处于“无预订”状态,有人订座后处于“部分预订”,而座位预订完后处于“预定完”状态,当航班快要起飞时,显然要“预订关闭”。
请用状态图描述其变迁过程。
22 某“订货”用例的文字描述如下:接收顾客的订单、确认订单是否已付款。
若未付款,则取消并退回订单;若已付款,则检查每个订单项。
对有货的订单项更新库存,同时向顾客发放提货单;对于缺货的订单项则向顾客发放缺货单,同时向采购人员发放采购单。
请用活动图描述这一用例。
23 掌握UML中各种模型图的作用,画法,结合“网上学生选课系统”仔细理解。
24 无向图包括点集和边集,其中边集的边连接着点集的一对点,如下图所示。
试用类模型描述无向图,只需描述其结构,不需描述其中点的位置和边的长度等信息。
25 简单有向图与无向图类似,只是边是有向的,如下图所示。
试用一个类模型描述有向图。
26 下面类图是一个图形交互编辑器的部分类图,其中sheet(页面)是Line和Box的集合,selection是选中的Line和Box的集合。
在下面的类图中没能表示一个Line或Box元素只能属于sheet或selectio之一的约束,试修改该类图,使其能表示该约束关系。
27 优化下面的类图,使其在没有确认专栏(Culumn)之前可以确定文本行(Line)在哪个页面(Page)上。
28 在下图中最上面的对象的名称是什么?该图表示的意思是什么?请绘制出与其相应的类图。
对象图实例29. 用面向对象方法建立一个现实问题的分析模型。
题目如下:学校管理系统要存储下列数据:(1)系:系名,系主任学生:学号,姓名,学生所属系教师:工作证号,姓名,教师所属系教授:研究领域研究生:专业方向课程:课程号,名称,学分(2)学生每学期要选修若干门课程,每门课有一个考试成绩;某个学期开设的某门课程只有一个任教教师;一个教师只任教一门课;一个教师有能力讲授多门课程,一门课程也可以有多位教师能够讲授;每个研究生只能跟随一位教授.试画出表示上述数据的类模型。
30. 分析下面的类图,画出新的类图,将原图中的多对多的关系转换为1:M (一对多)关系。
31. 请判断以下类图中的类关系是否合适,并说明理由。
飞机有机翼、机身、驾驶舱商店里的电器,一台电器可以是一台洗衣机,也可以不是;一台电器可以是一台电视机,也可以不是;一台电器可以是一台空调,也可以不是。
公司员工很多,包括程序员、分析员与项目经理等。
32. 仔细分析“语音邮箱系统”的“保留语音信息”和“拨打邮箱号”的用例事件流描述,请找出里面的对象,并画出时序图或协作图。
用例1:拨打邮箱号呼叫者拨打语音邮件系统的主号码;语音邮件系统发出提示音:输入邮箱号码并加#号呼叫者输入接收者的邮箱号语音邮件系统发出问候语:已进入XX的邮箱,请留言。
用例2:保留语音信息呼叫者“拨打邮箱号”呼叫者说出信息呼叫者挂断电话语音邮件系统将记录的信息存放在接收者的邮箱中。
33. 假设某高校需要建立一个档案管理系统,而你是该软件系统的负责人。
你所在的软件公司与高校一致同意系统的构建采用面向对象方法。
作为开发负责人,请你结合本课程中的学习知识,提供参考的软件体系结构设计方案,描述开发这个系统的过程,并写出开发过程的每个步骤中你认为应该用到的主要技术。
在面向对象技术中,对已有的类得特征稍作改变就可生成其他的类,这种方式称为(C)A.委托B.代C.继承D.封装类库是一种预先定义的程序库,它以程序模块的形式,按照(B)把一组类的定义和实现组织在一起:(C)对类库的建设提供了强有力的支持。
A.类的功能B.类的层次结构C.实例之间的调用关系D.类的类型A.引用B.重置C.类属类D.封装UML是一种面向对象的统一建模语言。
它包含10种图,其中,用例图展示了外部actor与系统所提供的用例之间的连接,UML中的外部actor 是指(D),用例可以用(C)图来描述。
状态图指明了对象所有可能的状态以及状态之间的迁移。
如果一个并发的状态由n个并发的子状态图组成,那么,该并发状态在某个时刻的状态由(A)个子状态中各取一个状态组合而成。
协作图描述了协作的(A)之间的交互和链接,它画成(A)图的形式。
A.人员B.单位C.人员或单位D.人员或外部系统A.类B.状态C.活动D.协作A.每一B.任意一C.任意二D.任意m(m<=n)A.对象B.类C.用例D.状态A.对象B.类C.用例D.状态在面向对象分析过程中,用概念模型来详细描述系统的问题域,用(B)来表示概念模型;用(A)来描述对象行为。
A.序列图 B类图 C协作图 D用例图A.序列图和协作图 B用例图和活动图 C类图和包图 D用例图和构件图在UML中,(D)把活动图中的活动划分为若干组,并将划分的组指定给对象,这些对象必须履行该组所包含的活动,它能够明确地表示哪些活动是由哪些对象完成的。
A组合活动 B同步条 C活动 D泳道在较高的抽象层次上,传统的程序流程图与UML中活动图最根本的区别在于(A)。
A程序流程图明确地指定了每个活动的先后顺序,而活动图仅描述了活动和必要的工作顺序B活动图不能提供循环控制结构,而程序流程图提供C活动图不能表示并发活动,而程序流程图可以表示并发活动D两者采用不同的图形符号系统在关于用例的描述中,错误的是(A)A用例将系统的功能范围分解成许多小的系统功能陈述B一个用例代表了系统的一个单一的目标C用例是一个行为上相关的步骤序列D用例描述了系统与用户的交互UML提供了4种结构图用于对系统的静态方面进行可视化、详述、构造和文档化。
其中(B)是面向对象系统建模中最常见的图,用于说明系统的静态设计视图;当需要说明系统的静态实现视图时,应该选择(A);当需要说明体系结构的静态实施视图时,应该选择(D)。
A构件图 B类图 C对象图 D部署图A构件图 B协作图 C状态图 D部署图A协作图 B对象图 C活动图 D部署图面向对象系统中有两种基本的复用方式:框架复用和类库复用。
下列关于框架和类库的描述不正确的是()。
A框架是一个“半成品”的应用程序B类库只包含一系列可被应用程序调用的类C框架会为一个特定的目的实现一个基本的、可执行的架构D 类库是框架的一种扩展形式下列有关面向对象的叙述不正确的是(C)A面向对象设计最根本的意图是适应需求变化B应尽量针对接口编程,而不要针对实现编程C 尽量使用继承而不是聚合,因为继承使得类间的耦合性最小D 尽量使用已有的类库当(D)时,用例是捕捉系统需求最好的选择。
A系统具有很少的用户 B系统具有很少的接口 C系统算法复杂,功能单一D系统有很多参与者现有两个用例UC1和UC2,其中UC2是一个完整的用例,可被实例化,而UC1需要UC2中的事件流才可被实例化,且UC1指定了使用UC2的精确位置,则UC1和UC2间的关系是(A)。
A IncludeB ExtendC GeneralizeD Call下列关于面向对象的分析与设计的描述,正确的是(B)。
A面向对象设计描述软件要做什么B面向对象分析不需要考虑技术和实现层面的细节C面向对象分析的输入是面向对象设计的结果D面向对象设计的结果是简单的分析模型在UML的动态建模机制中,(C)描述了对象之间动态交互关系,还描述了交互对象之间的静态链接关系,即同时反映系统的动态和静态性。
A状态图 B序列图 C协作图 D活动图在UML的通用机制中,(A)用于把元素组织成组;(D)是系统中遵从一组接口规范且付诸实现的物理的、可替换的软件模块。
A包 B类 C接口 D构件A包 B类 C接口 D构件根据下图所示的UML类图可知,类Car和类Boat中的move()方法(B)。
A引用了类Transport的move()方法B重置了类Transport的move()方法C是类Transport的move()方法的聚集D是类Transport的move()方法的泛化在一个客户信息系统中存在两种类型的客户:个人客户和集团客户。
对于个人客户,系统中保存了其客户标识和基本信息(包括姓名、住宅和Email);对于集团客户,系统中保存了其客户标识,以及与该集团客户相关的若干个联系人的信息(联系人的信息包括姓名、住宅电话、email、办公电话和职位)。