关联和依赖
依赖是临时关系,生命周期仅限于一个函数;
关联(association)则是长久关系,一般为对象的属性,其生命周期和对象本身是一致的;
聚合(aggregation)本身也是关联,但是其语义上是has-a的关系,同时保持独立;就像大楼和砖头的这种关系;大楼倒了,砖头其实还是可以存在的;再比如Customer和Order的关系;
组合(composition)是一种强关系聚合,虽然也是has-a的关系,但是是一种强关联;就像大楼和大梁的关系,大楼Over了大梁也随之Over;比如Order和OrderItem的关系。