1.对象和类 对象是系统中用来描述客观事物的一个实体,它由对象标识(名称)、属性(状态、数据、成员变量)和服务(操作、行为、方法)三个要素组成,它们被封装为一个整体,以接口的形式对外提供服务。
类则是对具有相同属性和服务的一个或一组对象的抽象。类与对象是抽象描述和具体实例的关系,一个具体的对象被称为类的一个实例。
类可以分为三种类型,分别是实体类、边界类和控制类。
(1)实体类:实体类映射需求中的每个实体,实体类保存需要存储在永久存储体中的信息 。
(2)控制类:控制类是用于控制用例工作的类,控制对象经常在其对应的用例执行完毕后消亡。
(3)边界类:边界类用于封装在用例内、外流动的信息或数据流。 边界类用于系统接口与系统外部进行交互,边界对象将系统与其外部环境的变更 。
2.继承与泛化
继承是面向对象方法中重要的概念,用来说明特殊类(子类)与一般类(父类)的关系,而通常用泛化来说明一般类与特殊类的关系,也就是说它们是一对多关系。
3.多态与重载 多态(即多种形式)性是指一般类中定义的属性或服务被特殊类继承后,可以具有不同的数据类型或表现出不同的行为,通常是使用重载和改写两项技术来实现的。
4.模板类
也称为类属类,它用来实现参数多态机制。一个类属类是关于一组类的一个特性抽象,它强调的是这些类的成员特征中与具体类型无关的那些部分,而用变元来表示与具体类型有关的那些部分。
5.消息和消息通信
消息就是向对象发出的服务请求,它通常包括提供服务的对象标识、消息名、输入信息和回答信息。消息通信则是面向对象方法学中的一个重要原则,它与对象的封装原则密不可分,为对象间提供了唯一合法的动态联系的途径。
8、面向对象分析
面向对象分析的目标是开发一系列模型,这些模型描述计算机软件,当它工作时以满足一组客户定义的需求。
1. OOA/OOD 方法
OOA 模型中包括主题、对象类、结构、属性和服务 5 个层次,需经过标识对象类、标识结构与关联(包括继承、聚合、组合、实例化等)、划分主题、定义属性、定义服务 5 个步骤来完成整个分析工作
2. Booch 方法
Booch 认为软件开发是一个螺旋上升的过程,每个周期中包括标识类和对象、确定类和对象的含义、标识关系、说明每个类的接口和实现 4 个步骤。
3. OMT 方法
OMT 是对象建模技术的缩写, 它主要用于分析、系统设计和对象设计。包括对象模型(静态的、结构化的系统的“数据”性质,通常采用类图)、动态模型(瞬时的、行为化的系统“控制”性质,通常使用状态图)和功能模型(表示变化的系统的“功能”性质,通常使用数据流图)。
4.OOSE 方法
它在 OMT 的基础上,对功能模型进行了补充,提出了“用例”的概念,最终取代数据流图进行需求分析和建 立功能模型。