-
聚合(Aggregation):整体与部分,比如:人-手,脚的关系
-
组合(Composition):整体与部分,是关联关系的一种,比聚合关系还要强的关系,如:构造函数中初始化的成员变量
-
依赖(Dependency):是一种使用关系,尽量不要双向依赖,如:局部变量,方法的参数
类的表示
在UML类图中,类包含:类名,属性(field)和方法(method)且带有分割线的矩形来表示,如:
属性前面的符号说明:
-
+: 表示public
-
-: 表示private
-
#: 表示protected(friendly)
类的关系表示方式
泛化关系
理解:继承关系
表示:继承关系表示父类和子类间的关系,它的符号(空心三角形 + 实线)
实现关系
理解:实现接口关系
表示:接口关系表示类和接口之间的关系,它的符号(空心三角形 + 虚线)
关联关系
理解:关联关系是一种拥有关系
表示:成员变量,可以是单向,双向,也可以说自我关联。符号是:带普通箭头的实心线,指向被拥有者,如果是双向关联就是没有箭头
聚合关系
理解:字面意思理解就是整体与部分的意思,比如人和手、脚的关系。
聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考虑奇具体的逻辑关系
表示:成员变量,带空心菱形的实心线,菱形指向整体
组合关系
理解:组合关系也是单向关联关系一种,和聚合关系类似,一般是整体拥有个体对象。
表示:它的符号(实心菱形 + 实线)
最后
写到这里也结束了,在文章最后放上一个小小的福利,以下为小编自己在学习过程中整理出的一个学习思路及方向,从事互联网开发,最主要的是要学好技术,而学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯,更加需要准确的学习方向达到有效的学习效果。 由于内容较多就只放上一个大概的大纲,需要更及详细的学习思维导图的点击这里>Android IOC架构设计免费获取。 群内还有免费的高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter全方面的Android进阶实践技术资料,并且还有技术大牛一起讨论交流解决问题。