面向对象简答题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 简述面向对象软件开发方法的优点。
(1)把软件系统看成是各种对象的集合,这更接近人的思维
(2)软件需求的变动往往是功能的变动,而功能的执行者一对象一般不会有太大
的变化。这使得按照对象设计出来的系统结构比较稳定
(3)对象包括属性和方法。对象把属性和方法的具体实现方式一起封装起来,这使得方法与之相关的属性不再分离,提高每个子系统的相对独立性,从而提高软件的可维护性。(4)支持封装,继承,多态,和抽象,提高了软件的可重用性,维护性和可扩展性
2. 简述面向对象技术的三大机制。
封装、继承、多态
3. 简述OOA模型的层次结构。
(1)对象-类层:划分待开发系统及其环境信息的基本构造单位,标出反映问题域的对
象和类,并用符号进行规范的描述,用信息提供者熟悉的术语为对
象和类命名。
(2)属性层:定义对象和某些结构中的数据单元,继承结构中所有类的公共属性可放于通用类中。标识对象类必需的属性并放在合适的继承层次上,属性的
特殊限制和实例连接关系也应标识出来。
(3)服务层:表示对象的服务或行为,即是要定义类上的操作。
(4)结构层:标识现实世界中对象之间的关系。当一个对象是另一个对象的一部分时,用"整体-部分"关系表示;当一个类属于另一个类时,用类之间继承关系
表示。
(5)主题层:可将相关类或对象划分为一个主题。
4. 简述OOD模型的总体结构,并画图表示。
(1)问题论域部分,在OOA模型的基础上,细化分析结果,设计一组构成底层应用模型的类和对象。
(2)人机交互部分:设计用户界面模型,该用户界面模型中的类和对象提供实现人机交互操作的接口函数。用户界面设计包括菜单设计、窗口设计、输入/输出界面设计等等。
(3)任务管理部分:建立一些类,用以负责处理操作系统级的并发问题、中断、调度以及其它与特定平台有关的问题。
(4)数据管理部分:提供数据管理系统中存储和检索对象的基本结构,包括对永久性数据的访问和管理。数据管理设计包括:
—数据存放设计:数据存放设计选择数据存放的方式(文件存放、关系数据库表格存放或面向对象的数据库存放)。
—设计相应的操作。为每个需要存储的对象和类增加用于存储管理的属性和操作,在类和对象的定义中加以描述。
1. 简述统一建模语言UML 的优点。
UML 是一种统一的建模语言。它综合了面向对象领域中多种优秀方法的特点和长处而提出的,消除了过去多种面向对象建模语言在概念上的差异、语义上的混淆和符号表达上的不同,成为了国际统一的建模语言。
(2)UML 是一种标准的面向对象建模语言。它支持面向对象技术的概念,提供了一套标准的模型元素,能简洁明了表达面向对象建模的的各种概念,适合于各种系统的面向对象建模。因此在软件业界获得了广泛的应用。
(3)UML 是一种可视化建模语言,,即UML 采用图形方式来描述待开发的软件系统,可以把复杂问题简单化和直观化,帮助软件设计人员理解和认识系统,抓住问题的本质,忽略非本质因素,促进问题的解决。
2. 简述面向对象技术的三大机制。
A 封装性
B 继承性
C 多态性
3. 简述面向对象分析的基本步骤。
1分析问题域,明确用户需求
2确定对象和类
3确定系统各部分的分类和组成结构
4找出并建立每个对象及其相互之间的联系。
5进一步协调和优化模型中各个组成部分(包括类/对象)的性能和相互关系,精炼侯选的类/对象,使系统成为由不同部分组成的最小集合。
6分析和设计模型中每个组成部分(包括类/对象)的功能实现细节,检查分析模型的一致性和完整性。
4. 应用UML 进行系统分析和设计所需建立视图有那几种?
class & object layer (类及对象层)attribute layer (类及对象层)service layer (服务层)struct layer (结构层)subject layer (主题层)图1.5 OOD 模型的总体结构
1. 简述面向对象分析的基本步骤。
(1)分析问题域,明确用户需求
了解与问题相关的业务领域知识,明确用户对系统的需求,定义系统的职责范围和边界,探讨问题的初步解决方案
(2)确定对象和类。即分析确定并标识构成系统的对象,再对对象进行抽象分类。先把系统看成由一些子系统组成,把每个子系统划分成一个主题,主题是由一组类和对象组成(3)确定系统各部分的分类和组成结构
●第一是按照一般—特殊关系,标识类间的继承关系,确定分类结构;
●第二是按照整体—部分关系,标识一个对象是有哪些对象组成,确定组装结构(4)找出并建立每个对象及其相互之间的联系。即以应用为基础来标识对象,定义对象的内部特征(属性和方法),建立实例连接和消息连接。消息连接体现了对象间的通信关系和接口协议形式
(5)进一步协调和优化模型中各个组成部分(包括类/对象)的性能和相互关系,精炼侯选的类/对象,使系统成为由不同部分组成的最小集合。
(6)分析和设计模型中每个组成部分(包括类/对象)的功能实现细节,检查分析模型的一致性和完整性。
2. 简述建立面向对象设计模型的方法步骤。
(1)问题论域部分,设计构造一组为底层应用建立模型的类和对象,细化分析结果。
(2)人机交互部分,设计一组有关类接口视图的用户模型的类和对象,设计用户界面(3)任务管理部分,确定系统资源分配,设计用于系统中类的行为控制对象/类。
(4)数据管理部分,确定持久对象的存储,将对象转换成数据库记录或表格
3. 简述基于UML的面向对象系统开发方法的基本步骤。
A 系统需求-用用户能动的语言-用例描述用户需求:
B 系统分析-用开发人员的语言描述用户需求,获得类图和对象图,作为构造系统的分析模型;
C 系统设计-用编程语言更精确的描述类图和对象图,未将类图和对象图映射到编码系统做好准备
D 系统设计-用源代码、脚本语言、二进制代码、可执行子程序或组件实现系统
4. 简述基于UML的关系数据库设计的方法步骤。
(1)业务Use Case 模型设计:就是进行数据库的需求根系,使用用例图等建立业务模型。(2)逻辑数据库模型设计:主要是确定应用系统所需要的持久数据。使用类图等建立数据库逻辑模型。如果是关系数据库设计,则需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。
(3) 物理数据库模型设计:使用组件图、配置图等。设计数据库的物理模型。
(4)物理实现设计:根据物理数据模型建立具体数据库环境下的数据库,定义构成数据库的基本表、视图等。
1. 为什么面向对象方法能更有效地克服软件危机?