UML描述模型的内容有三种 分别是  事物、关系和图


事物有:类,接口,用例,组件,结点,交互,包,注释等


类:




类分为三部分,顶部为 类名,中间为 属性,下层为 方法


在属性或方法前面有三种符号分别是:+,-,#;代表属性或方法的可见性级别;


+ public     -    private         # protected



类名:如果是抽象类,类名用斜体表示。非抽象类用正体显示


属性: 可见性(+-#)属性名[:类型][=默认值] 如: +eye:int=2


方法: 可见性(+-#) 方法名([参数名:类型][,参数名:类型])


接口




用例:




UML的关系


关联关系,泛化关系,依赖关系,实现关系


关联关系:



关联关系是有方向的 分为 双向关联和单向关联,双向关联 用一个双向实线箭头表示,单向关联 用一个单向实线箭头表示。上图为一个单向关联,类的表式形式为:


class 企鹅{
            
private 气候 qh;
}


关联关系包含 聚合关系和合成关系

聚合关系:


聚合关系是一种弱的拥有关系,代表B对象可以拥有A对象,但A对象不是B对象的一部分。聚合关系用一个空心棱形和一条实线表示。
如:雁群拥有好多大雁,但是大雁不是雁群的一部分。


合成关系


 


合成关系是一种强的拥有关系,表示A对象必须拥有B对象,B对象作为A对象的一部分存在。体现了严格 的局部与整体的关系。合成关系用一个实心棱型和一条实线组成。
如:鸟,必须要有翅膀,翅膀作为鸟的一部分存在,不能单独存在




泛化关系:




泛化关系,相当于继承关系。表示,在父类出现的地方可以用子类来代替,但是反过来则不成立。泛化描述的是 IS A
……的关系。泛化的两种主要用途是:子类重写父类 多态,子类扩展父类 继承
泛化关系用一个空心三角和一条实线表示。
如图:在出现动物的地方我们可以用鸟这个对象,但是如果在出现鸟对象的地方我们则不能用动物对象来替代。


依赖关系




依赖关系表示当对象A发生变化时,对象B也随着变化,则叫做B依赖A。依赖关系用虚线箭头表示。
常用于:做为一个方法的参数(B对象要用A对象做参数),做为方法的返回值(B对象返回A对象),方法中的调用(B对象中调用A对象)。


如上图中:动物的新陈代谢要用氧气和水,代码为
class 动物{
public void
新陈代谢(氧气,水){}


实现关系




实现关系不继承结构,只继承行为。实现关系用来定义接口与实现接口之间的关系。
实现关系常用于接口的实现,用例与实现用例的协作时间。实现关系用一条虚线和一个空心三角组表示或用空心圆加实线表示。


一个完成的UML图


posted on 2011-05-23 17:25  higirle  阅读(768)  评论(0编辑  收藏  举报