類別圖

成员

UML提供机制，以代表类的成员，如属性和方法，对他们的其他信息。
指定一个类成员（即任何属性或方法）的可见性有下列符号，必须摆在各成员的名字之前：
+   公共
-    私有
#    保護（即對子類可見）
~         包（即對包内其他成員可見）
/         推導（即由其他屬性推導得出，不需要直接給定其值）
底線       靜態

泛化

泛化（Generalization），即继承的反方向，指的是一个类（称为父类、父接口）具有另外的一个（或一些）类（称为子类、子接口）的共有功能。子类可视为其父类的特例，并可以增加新功能。用带空心三角形箭头的实线表示。

实现

实现（Realization）指的是一个class类实现interface接口（可以是多个）的功能；在Java中此类关系通过关键字implements明确标识。用带空心三角形箭头的虚线表示。

依赖

依赖关系（Dependency）可以简单的理解为一个类A使用到了另一个类B，" ... uses a ..."，被依赖的对象只是作为一种工具在使用，而并不持有对它的引用。而这种使用关系是具有偶然性、临时性的、非常弱的，但是B类的变化会影响到A；表现在代码层面，为类B作为参数被类A在某个method（方法）中使用。用带燕尾箭头的虚线表示。表示一个类依赖于另外一个类的定义；依赖关系仅仅描述了类与类之间的一种使用与被使用的关系。

关联

一个关联（Association）代表一个家族的联系。关联可以命名，可以饰以角色名称，有权指针，多重性，可视性，以及其他属性（如相互关联和有方向的（带燕尾箭头的实线表示）关联）。在语义上是两个类之间、或类与接口之间一种强依赖关系，是一种长期的稳定的关系，" ... has a ..." 。关联关系使一个类知道另外一个类的属性和方法；通常含有“知道”、“了解”的含义。某个对象会长期的持有另一个对象的引用，关联的两个对象彼此间没有任何强制性的约束，只要二者同意，可以随时解除关系或是进行关联，它们在生命期问题上没有任何约定。被关联的对象还可以再被别的对象关联，所以关联是可以共享的。 在代码层面上，被关联类以类属性的形式出现在关联类中，也可能是关联类引用了一个类型为被关联类的全局变量。当前定义有五种不同类型的关联。双向（Bi-directional）和单向（uni-directional）的关联是最常见的。

聚合

聚合（Aggregate）是表示整体与部分的一类特殊的关联关系，是“弱”的包含（" ... owns a ..." ）关系，成分类可以不依靠聚合类而单独存在，可以具有各自的生命周期，部分可以属于多个整体对象，也可以为多个整体对象共享（sharable）。例如，池塘与（池塘中的）鸭子。再例如教授与课程就是一种聚合关系。又例如图书馆包含(owns a) 学生和书籍。即使没有图书馆，学生亦可以存在，学生和图书馆之间的关系是聚集。聚集可能不涉及两个以上的类。图形以空心的菱形箭尾与实线来表示。
// Aggregationclass Pond{private:
   std::vector<Duck*> ducks;};

组成

组成（Composition）关系，是一类“强”的整体与部分的包含关系（" ... is a part of  ..."）。成分类必须依靠合成类而存在。整体与部分是不可分的，整体的生命周期结束也就意味着部分的生命周期结束。合成类别完全拥有成分类别，负责创建、销毁成分类别。例如汽车与化油器，又例如公司与公司部门就是一种组成关系。图形以实心的菱形箭尾与实线表示。
// Compositionclass Car{private:

    // Car is the owner of carburetor.
    // Carburetor is created when Car is created,
    // it is destroyed when Car is destroyed.
    Carburetor carb;};

关联、组成和聚集的差异

当一个类作为另一个类某个方法的参数时，为关联。
两者的差别主要描述了子类的生命周期的不同。组合关系中，一旦父类被销毁子类也会随之销毁；聚合关系中，子类的生命周期与父类独立。例如，一个大学包含若干个系（如化学系），每个系由若干名教授。如果大学撤销，这些系也就不复存在了，但这些教授仍会继续存在。还需注意，一名教授可以在不同系甚至不同学校兼职，而一个系不能属于两所大学。所以，大学与系之间是组成关系，而系与教授是聚合关系。

概括

概括（Generalization），是指类与类之间的共通性，通常会具有继承（inherit）的关系。图形以实线和空心箭头来表示。

实现

UML建模时，一个实现（realization）关系是两个模型元素之间的关系，其中一个模型元素（客户端）实现的行为，其他模型元素（供应商）指定。图形以虚线和空心箭头来表示。

依赖

依赖（Dependency）是一种弱化形式的关系，表示一类依赖于另外的类，因为类在某个时间点使用另一个类。

多重

关联多重性（Multiplicity）是用来定义参与对象数量，每个参与类都必须指定多重性值，例如class A会有多少个instance与class B的多少个instance关连在一起，在现实生活中，一个汽车驾驶与汽车个数就是多重关系，可以是一对多，或是多对多。