UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)
依赖(Dependency):
关联(Association):
聚合(Aggregation):
合成(Composition):
泛化(Generalization):就是程序当中的extends继承
实现(Realization):就是程序当中的implements实现
我是这样想的:一般类图之间大的方向就是继承与实现,对于继承、实现这两种关系没多少疑问,在类图里面能够能够体现他们的代码关系就够了,因为他们体现的是一种类与类、或者类与接口间的纵向关系,没有语义问题;
其他的四者关系则体现的是类与类、或者类与接口间的引用、横向关系,是比较难区分的,有很多事物间的关系要想准确定位是很难的,前面也提到,这几种关系都是语义级别的,所以从代码层面并不能完全区分各种关系(比如上面的关联和合成的示意图,代码是一样的,但是却代表了不同的关系),但是图出来了却能写出他们之间正确的调用关系代码;
四种关系的详细情况可参考:http://www.cnblogs.com/olvo/archive/2012/05/03/2481014.html
时间: 2024-10-17 15:39:41