面向对象 OO
面向对象的术语指:把软件组织成一系列离散的、合并了数据结构与行为的对象。
包含4个方面:
- 标识(identity): 数据被量化成对象
- 分类(classification):有着同样数据结构和行为的对象被分组为一个类
- 继承(inheritance):多个类基于一种分层关系,共享类间属性和方法
- 多态(polymorphism):对于不同的类,相同的操作有着不同的动作
-
三种模型
对系统的完整描述需要三种视角的模型:
- 类模型:描述系统内部对象及关系的静态结构。含 类图:节点是类,弧表示类间关系。
- 状态模型:描述了对象随着时间发生的变化的方面。含 状态图:由事件引发的状态间的转移。
- 交互模型:描述了系统中的对象如何协作,以完成更宽泛的任务。含 用例图,顺序图,活动图。
- 用例图:描述系统与外部参与者之间的交互
- 顺序图:显示交互的对象以及发生交互的时间顺序
- 活动图:描述计算的处理步骤之间的控制流
对象
对象是指具有标识的一个概念、一种抽象或事物。通常有对应的实体(如人),也可以只是一种概念(如二叉树)。
对象是类的一个实例。
类图的UML表示法
方框,黑体,首字母大写,单数名词 如 Person
对象的UML表示法
方框,黑体,下划线,首字母大写,对象名加冒号跟类名,如 JoeSmith:Person