类图中的关系

来源:互联网 发布:c语言怎么设置flag 编辑:程序博客网 时间:2024/04/29 02:32

类图中涉及的关系有“依赖”、“泛化”、“关联”、“组合”、“聚合”和“实现”等,它们长得还有些相像,于是我总是有些傻傻分不清楚。于是借助这幅图帮助自己梳理一遍它们的用法及区别:



第一组:泛化&实现

鸟属于动物的一种,因此鸟为子类,动物为父类。父类泛化子类,子类继承父类;用实线+三角表示;

同“泛化”长得相像的是“实现”,大雁实现“飞翔”这个接口,用虚线+三角表示;


第二组:依赖&关联

动物依赖氧气活着,用虚线+箭头表示;

同“依赖”长得相像的是“关联”,企鹅关联气候,即企鹅需要知道气候的变化,用实线+箭头表示;


最后一组:组合&聚合

组合表示强“拥有”,即整体和部分的生命周期一样,即鸟拥有两只翅膀,其中“1”和“2”称为“基数”,用实心菱形+箭头表示;

聚合表示弱“拥有”,即A对象可以包含B对象,但B对象不是A对象的一部分,大雁可以属于多个雁群,雁群包含多只大雁,用空心菱形+箭头表示。



0 0
原创粉丝点击