java web 航空公司类图,认识类图 - blogjava's web log - BlogJava

类是一组对象的描述,这组对象具有共同的属性、行为(操作)、关系和语义.

类是对象的蓝图,其中包含3个组成部分。第一个是Java中定义的类名。第二个是属性(attributes)。第三个是该类提供的方法。

属性和操作之前可附加一个可见性修饰符。加号(+)表示具有公共可见性。减号(-)表示私有可见性。#号表示受保护的可见性。省略这些修饰符表示具有package(包)级别的可见性。如果属性或操作具有下划线,表明它是静态的。在操作中,可同时列出它接受的参数,以及返回类型,如图(1):

d6205c793b38df6941431cfc0f27d9df.bmp

d15d0cf1113ea0bf00242088f1583174.png

约束

可以用约束(constraint)来添加足够的信息,使类的描述更加明确。

约束用括号括起来的字符串表示

Professor

name: String

age: Integer   { age>40 }

注释

通过注释的方式可以对类附加更多的信息

关联

关联是类之间的联系

关联的名称应该反映关系的用途,并且是一个动词;该名称可以忽略,尤其是使用角色名的时候。

应该尽量避免使用“具有”和“包含”这样的名称,因为它们不包含说明类之间具有什么关系的信息。

角色名相对于类必须是唯一的。 角色名应该是一个名词,它表示被关联的对象相对于关联对象的角色。 角色名放在关联线一端的旁边。

单向关联

如果类与类之间的联系是单向的,则称为导航关联。

导航关联用实线箭头连接两个类,只有在箭头方向上才有这种关联关系。

关联的约束

两个类之间的一个关联需要一个规则约束,可以通过在关联线附近加注一个约束来说明这个规则。

9fd0d872f62feba1129cdc20ac0e9622.bmp

关联类

和类一样,关联也可以拥有自己的属性和操作,此时这个关联实际上就是一个关联类(association class)

29082b6735e0b41918706a3e364b8937.bmp

多重性

多重性(multiplicity)定义有多少对象参与了某个关系。

3: 多重值和它们的表示

可能的多重值描述

表示   含义

0..1     0个或1个

1        只能1个

0..*     0个或多个

*        0个或多个

1..*     1个或我个

3        只能3个

0..5     0到5个

5..15    5到15个

限定关联

b4abd0f589984bb5370dcfebb148dccc.bmp

递归关联

当一个类与它自己发生关联的时候,我们称其为“递归关联”(reflexive association)

泛化

在面向对象的术语中,上述关系被称为继承(inheritance)。

UML中称它为泛化(generalization),定义是:将类抽象为更一般的类的过程。被泛化的类称为子类,得到的类称为超类。

74c5d9e7f8fde31898659e55ae2f6b73.bmp

依赖(dependency)

描述的是两个模型元素之间的语义上的连接关系。其中一个模型元素是独立的,而另外一个依赖于独立的这个模型元素,当独立的模型元素发生变化时将会影响依赖于该模型元素的模型元素。

24522c800f4303c322406d4b6d2a19e4.bmp

聚集(aggregation)

聚集(aggregation)表示整体与各部分之间的关系

组成

组成是一种整体和部分所属更强的聚集关系,每个部分只能属于一个整体,没有整体,部分也没有存在的价值

2c26963874ef8d9d6c4e1a8629041836.bmp

接口和实现

接口是用于指定类或组件的服务的操作的集合。

接口的表示法和类大致相同,都是用一个矩形来表示,并在矩形框中接口的名称上方放置构造型《interface》进行说明。

实现(realization)

类和接口之间的关系称为实现(realization)。实现关系用一个带空心三角形箭头的虚线来表示,箭头的方向指向接口。

d37a152abebe168be2b132a5cbb95df9.bmp

总结

类图标是一个包括三个部分的矩形

对象以名称带下划线的矩形表示

约束允许在现有 UML 模型中加入新的语义或更改现有的语义

关系以线条的形式来模型化,不同类型的线条用于表示不同类型的关系

多重性定义有多少对象参与了某个关系

聚集表示整体与各部分之间的关系

组成是一种强类型聚集关系,表明了部分和整体之间很强的所属关系和一致的生命周期

依赖关系表示模型元素之间的语义关系

发生在同一个类的对象之间的关联称为“递归关联”

使用泛化原则共享属性和操作的机制称为“继承”

接口是用于指定类或组件的服务的操作的集合。

转载注明:http://www.blogjava.net/wujun

了解更多http://www.holub.com/goodies/uml/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值