star UML 类图
arUML 中,类图中的线段代表不同类型的关系,每种关系都有其特定的含义和表示方法:
1.Association(关联):表示两个类之间的一般关系,通常用一条实线表示。它表示一个类的对象可以与另一个类的对象进行交互。
学生与课程(互相不知道对方的存在,单方知道则定向关联,双向知道则双向关联)
2.Directed Association(定向关联):类似于关联,但带有箭头,表示关系的方向性。箭头指向依赖的一方。
图书管与图书,医生与病人,学生与课程(当注册课程时,学生知道课程的存在,但课程不知道学生的存在)
3.Aggregation(聚合):表示整体与部分的关系,用一个空心的菱形连接到整体类。它表示部分可以独立于整体存在。
电脑与外设,汽车与发动机
4.Composition(组合):表示一种强聚合关系,用一个实心的菱形连接到整体类。它表示部分不能独立于整体存在,整体销毁时部分也会被销毁。
身体与器官,房子与房间
5.Dependency(依赖):表示一个类依赖于另一个类,用一条虚线和箭头表示。它表示一个类的变化可能会影响到依赖它的类。
依赖关系通常表示一个类的方法参数或局部变量使用另一个类
6.Generalization(泛化):表示继承关系,用一条实线和空心箭头表示。箭头指向父类,表示子类继承父类的属性和方法。
7.Interface Realization(接口实现):表示一个类实现了一个接口,用一条虚线和空心箭头表示。箭头指向接口
TIPS:
在解析代码中,两个类的关系不是机械的一成不变的,在不同的使用场景中,他们的对应关系是可以变化的,
类似于学生与课堂的关联,定向关联,双向关联的关系
关于箭头的指向,除了聚合与组合外 是从部分指向整体, 其余的都是子类指向基类,依赖项指向被依赖项(关于基类与依赖项,谁权重大,谁牛逼箭头就指向谁)