首页 新闻 会员 周边 捐助

关于UML的依赖关系

0
悬赏园豆:20 [已解决问题] 解决于 2016-03-17 20:27

想通过画UML类图来理清MVC各个模块各个类之间的关系,现在有一点疑问,

如果一个抽象类(如RouteBase),其规定方法GetRouteData,返回值类型为RouteData,

现在Route继承了RouteBase,实现其GetRouteData方法,返回值类型为RouteData,需要为RouteBase和Route都建立对RouteData的依赖吗?因为感觉都建立依赖关系的话如果继承的子类多了可能关系会很多,线会比较乱,感觉不是很好。

为了避免相同依赖带来的乱可以只给抽象类建立依赖吗?

 

只是想尽量画得规范一点,方便以后看或者给别人看。初次使用uml

迟鱼的主页 迟鱼 | 初学一级 | 园豆:77
提问于:2016-03-17 20:11
< >
分享
最佳答案
0

Route对RouteBase应该是泛化关系吧?对RouteData是依赖关系。

UML中有四种层次的依赖关系:依赖<关联<组合<聚合。泛化不属于依赖关系,而是另一个独立的种类。

 

UML类图类似于如下这样。另外,依赖关系一般是表现为参数或返回值。如果是类成员则应该是关联关系

收获园豆:20
飞鸟_Asuka | 菜鸟二级 |园豆:393 | 2016-03-17 20:21

我知道泛化不是依赖,我意思是RouteBase的GetRouteData方法也返回RouteData,需要为RouteBase也建立依赖吗。。

迟鱼 | 园豆:77 (初学一级) | 2016-03-17 20:24

@迟鱼: 抽象类和具体类只需要选择其一。一般用具体类建立依赖关系比较多。

当然如果继承自某一抽象类的具体类数量较多,那么用抽象类也可以

飞鸟_Asuka | 园豆:393 (菜鸟二级) | 2016-03-17 20:26

@飞鸟_Asuka: 谢谢 :)

迟鱼 | 园豆:77 (初学一级) | 2016-03-17 20:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册