《(本科)6.1第六章 面向对象的分析和设计ppt课件.pptx》由会员分享,可在线阅读,更多相关《(本科)6.1第六章 面向对象的分析和设计ppt课件.pptx(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、课程主讲人:6.1第六章 面向对象的分析和设计面向对象的分析和设计面向对象的概念面向对象分析方法的核心是利用面向对象的概念和方法为软件需求建造模型。它包含面向对象的图形语言机制以及用于指导需求分析的面向对象的方法学。本节主要介绍面向对象的概念、面向对象方法及面向对象分析过程。面向对象的概念面向对象对象分类继承通信例如,大型客机可视为对象,它具有位置、速度、颜色、容量等属性,对于该对象可施行起飞、降落、加速、维修等操作,这些操作将或多或少地改变飞机的属性值(状态)对象对象是现实世界中个体或事物的抽象表示,它封装了特殊的属性(数据)和行为方法。 面向对象对象分类继承通信对象对象是现实世界中个体或事
2、物的抽象表示,它封装了特殊的属性(数据)和行为方法。 例如,大型客机可视为对象,它具有位置、速度、颜色、容量等属性,对于该对象可施行起飞、降落、加速、维修等操作,这些操作将或多或少地改变飞机的属性值(状态)。 6.1 面向对象的概念面向对象的概念面向对象的分析例如,圆具有半径和圆心等属性,它是一个抽象类,可用circle类来定义,有许多不同半径和不同圆心的具体的圆,它们是类的一个个实例类类是具有相同属性和操作的一组相似对象的抽象 面向对象的概念例如,飞行器类是所有能够飞行的器械的抽象(如各种飞机、航天器等),它可以包含位置、速度、颜色等属性,同时也具有起飞、降落、加速等操作。显然类是一个支持继
3、承的抽象数据类型,而对象就是类的实例。 类类是具有相同属性和操作的一组相似对象的抽象 面向对象的概念例如,圆具有半径和圆心等属性,它是一个抽象类,可用circle类来定义,有许多不同半径和不同圆心的具体的圆,它们是类的一个个实例实例是由某个特定的类所描述的一个具体的对象 面向对象的概念例如,Circle类中定义的代表圆心坐标、半径、颜色等的数据成员,就是圆类所具有的属性,当实例一个具体的圆后,其属性也必然存在,还可能增加一些特殊的属性。 属性是类或对象中所定义的数据,它是描述客观世界实体静态特征的数据项。当类被实例化而形成具体的对象后,它不仅包含类所具有的一些属性,而且还有自己所特有的属性值
4、面向对象的概念在C+语言中把方法称为成员函数。例如在圆的对象中可以定义一个方法GetColor(),用来取得圆的颜色。 方法方法是对象所能执行的操作,也就是类中所定义的服务。方法描述了对象执行操作的算法,响应消息的方法 面向对象的概念例如,MyCircle是一个半径4cm、圆心位于(100,200)的Circle类,也就是一个实例,当要求它以绿颜色在屏幕上显示自己时,在C+语言中应该向它发下列消息:MyCircle.Show(GREEN);其中,MyCircle是接受消息的对象名,Show是消息选择符(即消息名),圆括号内的GREEN 是消息的变元。当Mycircle接收到这个消息后,将执行在
5、Circle类中所定义的Show操作。 消息就是要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明。通常,一个消息由以下三部分组成:接收消息的对象;消息选择符即消息名;零个或多个变元。面向对象的概念封装所谓封装就是把某个事物包起来,使外界不知道该事物的具体内容。在面向对象的程序中,把数据和实现操作的代码集中起来放在对象内部。 * 数据与方法代码的内部细节对外界隐藏,这样对其的任何改变可能引起的副作用只能作用在内部,不会传播。 * 封装是软件复用的基础。 *被封装对象间的接口大大地简化了,对象之间通过消息联系它时不再关心对象内部的数据结构,系统的耦合度降低了。 含义优点面向对象的概念继
6、承含义分类类之间的继承关系是现实世界中遗传关系的直接模拟,它表示类之间的内在联系以及对属性和操作的共享,即子类可沿用父类(被继承)的某些特征。当然也可以具有自己独有的属性和操作。 单重继承 多重继承 子类仅从一个父类继承属性和行为,而且子类可以覆盖父类的部分属性和方法 子类可从多个父类继承属性和方法 面向对象的概念汽车类轿车类货车类商用轿车家用轿车 汽车是抽象层次较高的概念,在汽车类的基础上可以分出轿车类与货车类等,如果再细分,还可在轿车类的基础上分出商用轿车与家用轿车等。由于商用轿车与家用轿车作为轿车在绝大多数的属性和行为上是一致的,可以把轿车类看成是家用轿车的父类,而家用轿车这个子类继承了
7、父类所拥有的属性与行为,并在父类的基础上加入了特殊化的属性与行为而形成了新的类。 在类的层次结构中,相对上层的是超类(superclass),相对下层的是子类(subclass) 类继承实例面向对象方法简介面向对象方法支持三种基本的活动 识别对象和类描述对象和类之间的关系通过描述每个类的功能定义对象的行为。 面向对象方法Booch方法 :提出面象对象的软件工程的概念OMT方法 :提出面象对象的建模技术方法OOSE方法 :用例贯穿于软件整个开发过程 UML在Booch方法、OMT方法和OOSE方法的基础上推出了统一的建模语言(UML),1997年被国际对象管理组织(OMG)确定为标准的建模语言