UML类绘图介绍

UML类绘图介绍

ID:41247703

大小:475.00 KB

页数:16页

时间:2019-08-20

UML类绘图介绍_第1页
UML类绘图介绍_第2页
UML类绘图介绍_第3页
UML类绘图介绍_第4页
UML类绘图介绍_第5页
资源描述:

《UML类绘图介绍》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、UML绘图介绍类操作列表类操作记录在类图长方形的第三个(最低的)区域中,它也是可选择的。和属性一样,类的操作以列表格式显示,每个操作在它自己线上。操作使用下列记号表现:name(parameterlist):typeofvaluereturned下面的表2中Flight类操作的映射。表2:从图2映射的Flight类的操作操作名称返回参数值类型delayFlightNameTypenumberOfMinutesMinutesN/AgetArrivalTimeN/ADate图3显示,delayFlight操作有一个Minu

2、tes类型的输入参数--numberOfMinutes。然而,delayFlight操作没有返回值。1当一个操作有参数时,参数被放在操作的括号内;每个参数都使用这样的格式:“参数名:参数类型”。图3:Flight类操作参数,包括可选择的“in”标识。当文档化操作参数时,你可能使用一个可选择的指示器,以显示参数到操作的输入参数、或输出参数。这个可选择的指示器以“in”或“out”出现,如图3中的操作区域所示。一般来说,除非将使用一种早期的程序编程语言,如Fortran,这些指示器可能会有所帮助,否则它们是不必要的。然而,

3、在C++和Java中,所有的参数是“in”参数,而且按照UML规范,既然“in”是参数的默认类型,大多数人将会遗漏输入/输出指示器。继承在面向对象的设计中一个非常重要的概念,继承,指的是一个类(子类)继承另外的一个类(超类)的同一功能,并增加它自己的新功能(一个非技术性的比喻,想象我继承了我母亲的一般的音乐能力,但是在我的家里,我是唯一一个玩电吉他的人)的能力。为了在一个类图上建模继承,从子类(要继承行为的类)拉出一条闭合的,单键头(或三角形)的实线指向超类。考虑银行账户的类型:图4显示CheckingAccount和

4、SavingsAccount类如何从BankAccount类继承而来。图4:继承通过指向超类的一条闭合的,单箭头的实线表示。在图4中,继承关系由每个超类的单独的线画出,这是在IBMRationalRose和IBMRationalXDE中使用的方法。然而,有一种称为树标记的备选方法可以画出继承关系。当存在两个或更多子类时,如图4中所示,除了继承线象树枝一样混在一起外,你可以使用树形记号。图5是重绘的与图4一样的继承,但是这次使用了树形记号。图5:一个使用树形记号的继承实例抽象类及操作细心的读者会注意到,在图4和图5中的图

5、中,类名BankAccount和withdrawal操作使用斜体。这表示,BankAccount类是一个抽象类,而withdrawal方法是抽象的操作。换句话说,BankAccount类使用withdrawal规定抽象操作,并且CheckingAccount和SavingsAccount两个子类都分别地执行它们各自版本的操作。然而,超类(父类)不一定要是抽象类。标准类作为超类是正常的。当你系统建模时,特定的对象间将会彼此关联,而且这些关联本身需要被清晰地建模。有五种关联。在这一部分中,我将会讨论它们中的两个--双向的关

6、联和单向的关联,而且我将会在Beyondthebasics部分讨论剩下的三种关联类型。请注意,关于何时该使用每种类型关联的详细讨论,不属于本文的范围。相反的,我将会把重点集中在每种关联的用途,并说明如何在类图上画出关联。双向(标准)的关联关联是两个类间的联接。关联总是被假定是双向的;这意味着,两个类彼此知道它们间的联系,除非你限定一些其它类型的关联。回顾一下Flight的例子,图6显示了在Flight类和Plane类之间的一个标准类型的关联。图6:在一个Flight类和Plane类之间的双向关联的实例一个双向关联用两个

7、类间的实线表示。在线的任一端,你放置一个角色名和多重值。图6显示Flight与一个特定的Plane相关联,而且Flight类知道这个关联。因为角色名以Plane类表示,所以Plane承担关联中的“assignedPlane”角色。紧接于Plane类后面的多重值描述0...1表示,当一个Flight实体存在时,可以有一个或没有Plane与之关联(也就是,Plane可能还没有被分配)。图6也显示Plane知道它与Flight类的关联。在这个关联中,Flight承担“assignedFlights”角色;图6的图告诉我们,P

8、lane实体可以不与flight关联(例如,它是一架全新的飞机)或与没有上限的flight(例如,一架已经服役5年的飞机)关联。由于对那些在关联尾部可能出现的多重值描述感到疑惑,下面的表3列出了一些多重值及它们含义的例子。表3:多重值和它们的表示可能的多重值描述表示含义0..10个或1个1只能1个0..*0个或多个*0个或多个1.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。