软件工程课后作业第七章
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第七章
7.1什么是对象?什么是类?它们之间是什么关系?
答:一、对象是指一组属性以及这组属性上的专用操作的封装体。
二、类是一组具有相同属性和相同操作的对象的集合。一个类中的每个对象都是这个
类的一个实例(instance)。
三、类是创建对象的模板,从同一个类实例化的每个对象都具有相同的结构和行为。
7.2什么是继承?
答:继承是类间的基本关系,它是基于层次关系的不同类共享数据和操作的一种机制。7.3什么是多态性?什么是动态绑定?
答:一、多态性是指同一个操作作用于不同的对象上可以有不同的解释,并产生不同的执行结果。
二、动态绑定是指在程序运行时才将消息所请求的操作与实现该操作的方法连接起
来。
7.4简述面向对象的分析过程。
答:1、获取客户对系统的需求
需求获取必须让客户与开发者充分地交流,这里介绍一种采用用况来收集客户需求
的技术。分析员首先标识使用该系统的不同的执行者(actor),这些执行者代表使用该系统的不同的角色。每个执行者可以叙述他如何使用系统,或者说他需要系统提
供什么功能。执行者提出的每一个使用场景(或功能)都是系统的一个用况的实例,一个用况描述了系统的一种用法(或一个功能),所有执行者提出的所有用况构成系统的完整的需求。
2、标识类和对象
类和对象来自问题领域。
可以先标识候选类,然后进行筛选
3、定义类的结构和层次
类的结构主要有两种:一般—特殊(generalization—specialization)结构和整体—部分(whole—part)结构。
一般—特殊结构是一种分类结构,反映了类间的一般与特殊的关系。一般类与特殊
类之间是一种“is a”的关系,如:汽车是一种交通工具。同样,特殊类还可以分为更
特殊的类,这样可形成类的层次结构。
整体—部分结构反映了类间的整体与部分关系。值得注意的是,整体—部分关系是对对象而言的,而不是对类的。整体—部分关系是一种“has a ”的关系,如“汽车”有“发动机”。同样,整体—部分结构也具有层次结构。
4、建造对象——关系模型
对象--关系模型描述了系统的静态结构,它指出了类间的关系(relationship)。
类之间的关系有关联、依赖、泛化、实现等。
5、建立对象——行为模型
对象--行为模型描述了系统的动态行为,它们指明系统如何响应外部的事件或激励(stimulus)。
建模的步骤如下:
①评估所有的用况,以完全理解系统中交互的序列。
②标识驱动交互序列的事件,理解这些事件如何和特定的对象相关联。
③为每个用况创建事件轨迹(event trace)。
④为系统建造状态机图。
⑤复审对象--行为模型,以验证准确性和一致性。
7.5简述面向对象的设计过程。
答:1、系统设计
将子系统分配到处理器
选择实现数据管理、界面支持和任务管理的设计策略
为系统设计合适的控制机制
复审并考虑权衡(折衷)
2、对象设计
在过程级别(procedural lavel)设计每个操作,即设计每个操作的实现细节
定义内部类
为类属性设计内部数据结构
3、消息设计
使用对象间的协作和对象--关系模型,设计消息模型
4、复审
复审设计模型并在需要时迭代。
7.6什么是用况?什么是执行者?
答:一、用况是一个类,而不是实例,用况的实例称为场景(scenario)
用况总是被执行者启动的(initiated),执行者必须直接或间接地指示系统去执行用
况用况向执行者提供值,这些值必须是可识别的
用况是完整的,一个用况必须是一个完整的描述
二、执行者是指与系统交互的人或其它系统
执行者代表一种角色,而不是具体的某个人