Uml 与 Rational Rose( 类图 )
2013-01-31 15:09
323 查看
from : http://blog.csdn.net/hongtaq/article/details/8068141
类之间的关系可以分为四种:
关联关系( Association )
依赖关系( Dependancy )
积累关系( Aggregation )
范化关系( generalization )
关联关系( Association )
关联关系是指通过对象属性来表示一个对象对另一个对象的依赖。比如一个订单包含一件产品,在类Order中一定有一个Product类型
的成员变量,这时我们说Order与product之间的关系是关联关系。
关联关系分为双向关联和单项关联,刚才提到的Order与Product之间的关系为单向关联,以为在Order中有Product类型的成员变量,但是在Product中没有类型为Order的成员变量,单向关系用一个箭头来表示
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133685125033_4227.gif)
另外一种关联关系是双向关联,比如说一个类别包含很多产品,而每个产品都属于一个类别。所以Category 类和 Product类需要相互将对方作为自己的成员变量,这是,我们说Category 和 Product 之间是双向关联,双向关联用一个不带箭头的线来表示。
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133685645661_4217.gif)
在Rational rose中,添加双向关联关系,点击 tools -> create -> association 添加单向关联关系 ,tools -> create -> unidirectional association
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133691436179_5646.gif)
依赖关系( Dependancy )
依赖所表示的关系总是单向的,而且这种关系不是通过属性表现出来的,大多数情况下,如果类A的成员方法中使用类B作为参数,那么就称类A依赖于类B, 依赖关系用带箭头的虚线表示:
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133692474205_2831.gif)
添加依赖关系的方法和添加关联关系的方法一样,只要选择tools
-> create -> dependancy就可以了。
积累关系( Aggregation )
积累是强关联,是整体与部分之间的关系,如EmployeeList是由Employee组成的,一个类可能与其他多个类之间有积累关系,如一个汽车类(Car)由车轮( wheel ), 发动机( Engine ) , 车门( Door )组成。所以Car 与 Wheel , Engine , Door 之间是积累关系。积累关系用一个带菱形的线表示,菱形画在整体一端:
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133697144823_1275.gif)
在rose中添加Aggregation关系,可以点击tools -> create -> aggregation,双击代表积累关系的线可以编辑积累关系的各种属性.
范化关系( generalization )
范化关系用于表示类之间的继承关系。使用一条带箭头的实线来表示,箭头由子类指向父类。
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133698323444_1546.gif)
在Rose中创建继承关系可以通过tools -> create -> generalization ,或者直接从左侧的工具栏中添加
类之间的关系可以分为四种:
关联关系( Association )
依赖关系( Dependancy )
积累关系( Aggregation )
范化关系( generalization )
关联关系( Association )
关联关系是指通过对象属性来表示一个对象对另一个对象的依赖。比如一个订单包含一件产品,在类Order中一定有一个Product类型
的成员变量,这时我们说Order与product之间的关系是关联关系。
关联关系分为双向关联和单项关联,刚才提到的Order与Product之间的关系为单向关联,以为在Order中有Product类型的成员变量,但是在Product中没有类型为Order的成员变量,单向关系用一个箭头来表示
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133685125033_4227.gif)
另外一种关联关系是双向关联,比如说一个类别包含很多产品,而每个产品都属于一个类别。所以Category 类和 Product类需要相互将对方作为自己的成员变量,这是,我们说Category 和 Product 之间是双向关联,双向关联用一个不带箭头的线来表示。
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133685645661_4217.gif)
在Rational rose中,添加双向关联关系,点击 tools -> create -> association 添加单向关联关系 ,tools -> create -> unidirectional association
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133691436179_5646.gif)
依赖关系( Dependancy )
依赖所表示的关系总是单向的,而且这种关系不是通过属性表现出来的,大多数情况下,如果类A的成员方法中使用类B作为参数,那么就称类A依赖于类B, 依赖关系用带箭头的虚线表示:
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133692474205_2831.gif)
添加依赖关系的方法和添加关联关系的方法一样,只要选择tools
-> create -> dependancy就可以了。
积累关系( Aggregation )
积累是强关联,是整体与部分之间的关系,如EmployeeList是由Employee组成的,一个类可能与其他多个类之间有积累关系,如一个汽车类(Car)由车轮( wheel ), 发动机( Engine ) , 车门( Door )组成。所以Car 与 Wheel , Engine , Door 之间是积累关系。积累关系用一个带菱形的线表示,菱形画在整体一端:
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133697144823_1275.gif)
在rose中添加Aggregation关系,可以点击tools -> create -> aggregation,双击代表积累关系的线可以编辑积累关系的各种属性.
范化关系( generalization )
范化关系用于表示类之间的继承关系。使用一条带箭头的实线来表示,箭头由子类指向父类。
![](http://photo.pic.sohu.com/images/oldblog/person/2005/12/4/1133698323444_1546.gif)
在Rose中创建继承关系可以通过tools -> create -> generalization ,或者直接从左侧的工具栏中添加
相关文章推荐
- Uml 与 Rational Rose( 类图 )
- UML 与 Rational Rose( 类图 )
- Uml 理解Rational Rose软件中四种视图和Uml 9类图之间的关系
- UML 基础: 类图
- UML学习之:类图
- UML 类图
- Rational Rose由代码生成类图
- 使用 rose 将 c++代码转换为 uml 类图
- UML建模详解(5)—类图组成构建详解
- 正确认识使用UML中的类图——辨析类图的两种存在形式
- UML:概要设计,用什么画我的类图?
- 设计模式之基础篇UML(类图)
- UML类图常见的几种关系
- UML基础系列:类图
- UML学习——类图
- 23种设计模式 UML 类图及对应示例代码 (二)
- UML 基础: 类图
- 三大UML建模工具Visio、Rational Rose、PowerDesign的区别
- UML总结(对九种图的认识和如何使用Rational Rose 画图)
- 实例解析UML图形中UML用例图和类图用法