- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对象的奇妙特性 对象有着坚硬的外壳,从外部看来,对象的内部就是一个黑匣子,这被称为“封装”; 对象可以繁育,产下的孩子将拥有父辈的全部本领,这称为“继承”; 对象都是多面派,它会根据不同的要求展现其中的一个面,这就是“接口”; 多个对象可能长着相同的脸,而这张脸背后却有着不同的行为,这就是“多态”。 多态性举例 例如:基类“动物”定义了进食行为,派生类“猫”和“狗”都继承了动物类的进食行为,当一个进食的消息发出后,猫类和狗类的对象接收到这个消息后可以各自执行不同的进食行为,如猫吃耗子,狗啃骨头等。 7.多态性 ?多态性(Polymorphism)是指在基类中定义的属性和服务为其子类继承后,可以具有不同的数据类型或表现出不同的行为。 ?在体现一般与特殊关系的一个类层次结构中,不同层次的类可以共享一个方法(操作)的名字,但是却有各自的不同的实现。 ?派生类继承基类的属性或服务操作的名称,而根据派生对象的特性修改属性的数据类型或服务操作的内容,称为重载(Overloading)。 ?重载是实现多态性的方法之一。 1.2.1 面向对象的主要概念 Home ?面向对象的分析(OOA)的主要任务是分析问题领域,找出问题解决方案,发现对象,分析对象的内部构成和外部关系,建立软件系统的对象模型。 ?面向对象的设计(OOD)的主要任务是根据已确立的系统对象模型,运用面向对象技术,进行系统软件设计。 ?OOA与OOD不可能截然分开。在OOA中往往不仅考虑系统“做什么”的问题,也要适当考虑系统“怎么做”的问题;在OOD中不仅解决系统“怎么做”的问题,也要从软件实现的角度出发,修改、细化、完善系统的分析模型。 ?所谓模型(Model)是现实世界的一个简化,软件系统模型提供一个系统的蓝图。 1.2.2 面向对象的系统分析与设计方法 Home 1.面向对象的分析 面向对象的分析的基本过程如下: (1)问题领域分析 (2)发现和定义对象与类 (3)识别对象的外部联系 (4)建立系统的静态结构模型 (5)建立系统的动态行为模型 1.2.2 面向对象的系统分析与设计方法 Home 2.面向对象的设计 基本过程如下: (1)设计对象与类 (2)设计系统结构 ?一个复杂的软件系统由若干子系统组成,一个子系统由若干个软件组件组成。 ?软件系统的结构的两种方式:层次结构和块状结构。 ?在层次结构中,每一层是一个子系统,下层为上层功能的实现提供服务。 ?在块状结构中,系统由相互独立的子系统组成,一个子系统就是系统的一个软件块,块之间弱耦合,每个块提供一种类型的服务。 1.2.2 面向对象的系统分析与设计方法 Home ?一般的应用系统可有四个组成部分:问题领域、人机界面、数据管理、任务管理,如图1.4所示。 1.2.2 面向对象的系统分析与设计方法 Home 其它系统 问题领域 数据管理 系统交互 界面 人机界面 窗口 报告 设备 文件 RDBMS OODBMS 图1.4 一个应用系统的系统结构 (3)设计问题领域子系统 ?问题领域子系统负责实现领域的业务服务。 ?问题领域子系统应包括与应用领域的业务直接有关的全部的类和对象。 ?对OOA模型中的某些类、对象、结构、属性、操作进行调整,根据软件实现的要求增加必要的类、属性和联系。 (4)设计人机交互子系统 ?人机交互子系统提供用户界面。 ?设计用户界面,设计工作的内容包括用户分类,描述交互场景,设计人机交互操作命令、命令层次和操作顺序,设计详细交互过程,设计人机交互类,如窗口、对话框、菜单等。 ?用户界面应当充分体现业务领域的特点,符合业务应用的习惯,而且具有现代化气息,生动活泼。 ?一般采用图形界面(GUI)和人机应答的形式,力求操作简便,用户友好。 1.2.2 面向对象的系统分析与设计方法 Home (5)设计数据管理子系统 ?数据管理子系统负责数据的管理,包括数据的录入、操纵、检索、存储,以及对持久性数据的访问控制等。 ?设计的主要任务是:确定数据管理的方法,设计数据库与数据文件的逻辑结构和物理结构,设计实现数据管理的对象类。 ?目前常用的数据管理的方法有三种:数据文件管理、关系数据库、面向对象数据库(包括对象/关系数据库)。 ?数据库由专门的数据库管理系统(DBMS)管理,在数据管理子系统中需要有相应的类操纵使用数据库中的数据。 1.2.2 面向对象的系统分析与设计方法 Home (6)设计任务管理子系统 ?在计算机系统中所谓任务(Task)即指进程(Process)。 ?任务管理子系统的职责就是协调和管理进程,尤其是并发的进程。 ?要设计软件系统的内部模块运行的管理机制,即把事件驱动、时钟驱动、优先级管理、关键任务和协调任务等系统管理任务分配给硬件和软件执行。
文档评论(0)