92面向对象的软件工程 从生存周期角度讲,包括OOA,OOD,OOP, OOT, OOSM; 921面向对象基本概念 922对象、类及类之间关系的分析 923典型的面向对象开发方法 2021年1月27日 第9章面向对象方法学 第11页
2021年1月27日 第9章 面向对象方法学 第11页 9.2 面向对象的软件工程 从生存周期角度讲,包括OOA, OOD, OOP, OOT, OOSM; 9.2.1 面向对象基本概念 9.2.2 对象、类及类之间关系的分析 9.2.3 典型的面向对象开发方法
921面向对象基本概念 面向对象基本概念: 1.对象 对象是对问题域中客观存在的事物的抽象,是一组属性和在 这些属性上的操作的封装体。 对象包括两大要素:属性(用来描述对象的静态特征)和操 作(用来描述对象的动态特征) 对象的UML表示符号参见图92。 对象名 国性: 操作: 图92对象的UM表示符号 2021年1月27日 第9章面向对象方法学 第12页
2021年1月27日 第9章 面向对象方法学 第12页 9.2.1 面向对象基本概念 面向对象基本概念: 1.对象 对象是对问题域中客观存在的事物的抽象,是一组属性和在 这些属性上的操作的封装体。 对象包括两大要素:属性(用来描述对象的静态特征)和操 作(用来描述对象的动态特征)。 对象的UML 表示符号参见图9.2
921面向对象基本概念 面向对象基本概念(续): 2.类 类是具有相同属性和操作的一组相似对象(实体)的集合。 同类的对象具有相同的属性和方法。 UML中类图的描述通常表示为长方形,其中,长方形又分3 个部分,分别用来表示类的名字、属性(静态)和操作( 动态)。 小汽车 例如,“小汽车”类的UML类图描社翻啤 述可以参见图93 速度: Integer 颜色: Color 方向: Direction t drive(direction: Diretion, speed: Integer s0) GetDate O: Date 2021年1月27日 第9章面向对象方法学图93小汽车类的UML类图描述
2021年1月27日 第9章 面向对象方法学 第13页 9.2.1 面向对象基本概念 面向对象基本概念(续): 2.类 类是具有相同属性和操作的一组相似对象(实体)的集合。 同类的对象具有相同的属性和方法。 UML 中类图的描述通常表示为长方形,其中,长方形又分3 个部分,分别用来表示类的名字、属性(静态)和操作( 动态)。 例如,“小汽车”类的UML 类图描 述可以参见图9.3
921面向对象基本概念 3.消息 消息是面向对象系统中对象之间交互的途径,是向另外一个 对象发出的服务请求,请求对象参与某一处理或回答某 要求的信息,是对象之间建立的一种通信机制。 通常一个消息的关键要素包括消息的发送者、消息的接收者 消息所要求的具体服务及其参数、消息的应答等。 例如,若有已定义的类 Circle,定义 My Circle是 Circle类的 个对象,则语句 My Circle. Show( GREEN)用来表示 该对象向系统发送一个要以绿颜色显示自己的消息,其中 My Circle是发送消息的对象名字,ShoW是消息名, GREEN是消息的参数。 2021年1月27日 第9章面向对象方法学 第14页
2021年1月27日 第9章 面向对象方法学 第14页 9.2.1 面向对象基本概念 3.消息 消息是面向对象系统中对象之间交互的途径,是向另外一个 对象发出的服务请求,请求对象参与某一处理或回答某一 要求的信息,是对象之间建立的一种通信机制。 通常一个消息的关键要素包括消息的发送者、消息的接收者 、消息所要求的具体服务及其参数、消息的应答等。 例如,若有已定义的类Circle,定义MyCircle 是Circle 类的 一个对象,则语句MyCircle.Show(GREEN)用来表示 该对象向系统发送一个要以绿颜色显示自己的消息,其中 MyCircle 是发送消息的对象名字,Show 是消息名, GREEN 是消息的参数
921面向对象基本概念 面向对象基本概念: 4.封装 封装指把对象的属性和操作结合成一个独立的系统单位,并 尽可能隐藏对象的内部细 封装的作用有3个方面: V-音量|V+ 一是使对象形成接口和实 频道》 >二是封装的信息隐藏将所 开电源关 (细节)分离; 被封装的行为和状态 >三是封装可以保护对象,j图94电视机逼控板对象的封装特性示意图 2021年1月27日 第9章面向对象方法学 第15页
2021年1月27日 第9章 面向对象方法学 第15页 9.2.1 面向对象基本概念 面向对象基本概念: 4.封装 封装指把对象的属性和操作结合成一个独立的系统单位,并 尽可能隐藏对象的内部细节,又称信息隐藏。 封装的作用有3 个方面: ➢ 一是使对象形成接口和实现两个部分; ➢ 二是封装的信息隐藏将所声明的功能(行为)与内部实现 (细节)分离; ➢ 三是封装可以保护对象,避免用户误用;