前言
在最初学习uml视频的时候发现自己对uml类图之间的关系并不是太理解,当时也没有及时的去总结,这就是执行力不够,发现但是没有总结,在学习大化设计模式的时候有提到过uml类图,并且有详细的描述,这次我没有放过它,及时的做出了总结,如果有兴趣大家一起交流哦。
内容
1.泛化(继承 )
2. 接口
3. 聚合
4. 合成(组合)
5. 依赖
6. 关联
泛华
泛华在uml中的意思就是继承,对于继承我想大家应该非常了解,我们把它运用到生活中就是儿子继承父亲的家产,儿子同时也可以自己拥有父亲没有的财富,这就事UML中的继承
在面向对象中有封装,多态 继承,所以对于泛华我们一定要学好
在uml中继承关系使用空心三角形+实现来表示,举一个栗子,动物和鸟,我们知道动物是有生命和新陈代谢的,而鸟同样也是这样的,不过鸟有羽毛,还可以下蛋
从图中我们可以看出,鸟继承了动物的特性,并且他还有自己的方法特性,这就是继承
接口
在我们生活中其实我们最不缺的就是接口,我们的一些电器用品哪一个不需要接口,只有我们可以与接口相连,我们就可以实现某些功能,UML中的接口与生活中的接口是一样的
举一个栗子,我们都看过动画片里的唐老鸭是可以说话的,而生活中的唐老鸭是不可以说话的,所以我们可以说唐老鸭有一个接口可以实现说话的功能
如图
接口也可以叫做棒棒糖表示法,表示方式是空心三角形+虚线表示
聚合
聚合表示一种弱的“拥有”关系,体现的是A对象可以包含B对象。但B对象不是A对象的一部分,表示方式是:空心的菱形+实线箭头来表示
其实在我们生活中有数不尽的聚合关系,例如人类和某个人就是整体与部分的关系,并且如果缺少也不会影响到整体,假如某一个去世了,则也不会影响到人类这个整体。
举例说, 雁群与大雁的关系就是整体与部分的关系,并且但缺少时也互不影响
合成(组合)
其实合成和聚合有相似之处,只不过合成要比聚合更加的严谨,聚合在合成的基础改变的是如果部分缺少,则整体是不成立,所以说整理不能离开部分,表示方式是实心的菱形+实线表示
举例:鸟和翅膀,鸟代表的就是整体,而翅膀则代表的是部分,鸟离不开翅膀,否则他就能活,所以表名了整体离不开部分
依赖
我们还利用生活中的例子,动物的生存离不开氧气,水等,它们都依赖与这些东西,没有氧气和水它们活不下去,所以这也就体现了依赖的含义
关联
双向关联:
指双方都知道对方的存在,都可以调用对方的公共属性和方法。
箭头及指向:双向的关联可以有两个箭头或者没有箭头
例1:公司和人
将来在Person类中会有属性名为employer,类型为Company ;在Company类中会有一个属性为Employee,类型为Person
例2:教师和学生
单向关联:
指一方可以调用对方的属性和方法。
箭头及指向:单向关联是带普通箭头的实心线,指向被拥有者。
例3:学生和某课程
一名学生可能要上多门课程,课程是个抽象的东西他不拥有学生
自身关联(反身关联):
自己引用自己,带着一个自己的引用。就是在自己的内部有着一个自身的引用。
总结
温故而知新,善于利用知识网,发现–执行—总结