1.一般化关系(也叫泛化(generalization):表示is-a的关系),包括继承/实现,图网上找的,谢谢了
注意:继承是实线,而实现是虚线
2. 关联关系(Association) 和组合(Composition)关系 和聚合关系(Aggregation)
关联者和被关联者是前者知道后者的属性的关系,因为我有你的引用,我可以使用你。可以单向关联也可以双向关联。
聚合关系has-a的关系,是一种不稳定的包含关系。在java的语法中,他和关联关系无法区分。聚合强调的是一个整体,比如汽车和轮子的关系
组合是一种更强的关联contains-a,被组合的对象不能单独存在,有组合的类负责被组合的生命周期,如美猴王和他的四肢,订单和订单的商品项
从关联强度来说:组合>聚合>关联
3.依赖关系(denpendency)
一个类的某个方法,需要依赖另一个类,就是依赖关系,比如一个人买车/房,就依赖车类和房类。
这里并没有关联,Car和House只是作为方法的参数,或者局部变量使用,使用虚线