UML中的那些关系

来源:互联网 发布:mac 使文件夹隐藏 编辑:程序博客网 时间:2024/05/04 01:06

        图画了都两个星期了,结果被师父一个问题又给打懵了。师父:类图中都有哪些关系啊?  我(嘿嘿,这块我可懂,难不倒我):关联、泛化、实现、依赖,泛化相当于继承,关联包括组合、聚合,组合比聚合关系要更强,组合就相当于人和胳膊的关系,两者有相同的生命周期,谁也离不开谁。聚合相当于手机和电池,它们离开彼此还能存在。师父:那用例图中呢?都有什么关系?我:额,都......都......都差不多吧......

        哎,人不能得瑟啊。看来还是有必要再整理整理脑中那些混乱的关系啊~~~

        用例图中有哪些关系?

        1、包含

                包含关系是指用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分。如机房中:


        2、扩展

                在一定条件下,把新的行为加入到已有的用例中,要加的新用例称为扩展用例,原有的用例称为基础用例,从扩展用例到基础用例的关系就是扩展关系。如机房中:



        3、泛化

                用例的泛化指的是一个父用例可以被特化形成多个子用例,而父用例和子用例之间的关系就是泛化关系。在用例的泛化关系中,子用例继承了父用例所有的结构、行为和关系,子用例是父用例的一种特殊形式。如机房中:(操作员拥有一般用户的所有行为,管理员拥有操作员的所有行为)



        类图中有哪些关系?

        1、依赖(Dependency)

                一个事物发生变化就会影响另外一个事物的语义。及一个类的变化需要被依赖放发生相应的变化。如机房中:


        2、泛化(Generalization)

                泛化关系用来描述类的一般和具体之间的关系。这与用例图中的泛化没什么区别,也类似继承。

如机房中:


        3、关联(Association)

                关联有两种非常重要的形式,分别是聚合(Aggregation)关系和组合(Composition)关系。

                聚合关系描述的是部分与整体之间的关联,聚合的各部分可单独存在。比较形象的例子如:


                组合关系是一种更强形式的关联,在组合中,各成员具有相同的生命周期,不能单独存在。比较形象的例子如:


        4、实现(Realization)(这块理解的不是很顺)

                实现关系将一种模型元素(如类)与另一种模型元素(如接口)连接起来,从而说明和其实现之间的关系。在实现中,接口只是行为的说明而不是结构或者实现,而类中则要包含其具体的实现内容,可以通过一个或多个类实现一个接口,但是每个类必须分别实现接口中的操作。如:



罗列完,总想找些联系,找些类图的关系与用例图的关系的一些联系,但.....但.....但抽象不出来,你们有什么建议?




2 0
原创粉丝点击