UML:统一建模语言或标准建模语言
一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,可用于多类型软件系统开发建模的各个阶段。
类的层次结构:代表类与类之间的关系
泛化 依赖 关联 聚合 组合其中泛化是纵向关系,其他关系都是横向关系,在横向关系中的强弱关系为依赖 < 关联 < 聚合 < 组合
泛化关系(is a):就是继承,表示一般与特殊的关系,即“一般”元素是“特殊”元素的泛化。在继承中,一般类是父类,特殊类是子类。依赖关系(use a):表示一个元素以某种方式依赖于另一种元素。就是一个类A使用另一个类B,而这种关系是具有偶然性,临时性。但是类B的变化会影响到类A。
依赖的例子:
一个类把另一个类的对象作为参数 一个类访问另一个类的全局变量 一个类调用另一个类的类操作关联关系:体现的是二个类之间一种强依赖关系,一般是长期性的,平等的。关联可以是单向,双向的。
关联关系:
双向关联 单向关联 自身关联(反身关联)双向关联:指双方都知道对方的存在,都可以调用对方的公共属性和方法,默认情况下,关联是双方的。
单向关联:用带箭头的实线表示。
自身关联:在系统种可能会存在一些类的属性对象类型为该类本身,这种特殊的关联关系称为自关联。即自己引用自己。
聚合关系(use a):关联关系的一种,是强的关联关系,它体现的是整体与部分的关系,且部分可以离开整体而单独存在。此时整体与部分之间是可以分离的,它们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享。
组合关系(contains a):是整体和部分的关系,是比聚合关系还有强的关系,但此时整体与部分是不可分的,整体的生命周期结束也意味着部分的生命周期结束。