UML建模|类图
发布网友
发布时间:2022-10-11 23:49
我来回答
共1个回答
热心网友
时间:2023-10-16 03:39
类图(Class Diagram)展现了一组对象、接口、协作和它们之间的关系。在面向对象系统的建模中所建立的最常见的图就是类图。类图给出系统的静态设计视图。包含主动类的类图给出了系统的静态进程视图。
类图中通常包含以下内容:
1)类。
2)接口。
3)协作。
4)依赖、关联、泛化和实现关系。
UML(Unified Modeling Language,统一建模语言)中有4种关系:依赖、关联、泛化和实现。
下面介绍下类、泛化关系、实现关系、关联关系、依赖关系的描述和表示。
1) 类
类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同的属性、操作、关系的对象集合的总称。
(类对应的UML图是一个矩形,分为三层,最顶层的是类名,中间层的是属性,最底层的是方法。
属性的表示方式为:【可见性】【属性名称】:【类型】={缺省值,可选}
方法的表示方式为:【可见性】【方法名称】(【参数列表】):【类型】
可见性都是一样的,“-”表示private,“+”表示public,“#”表示protected。)
2) 泛化关系
泛化关系(Generalization)也叫继承关系,用于描述父子类之间的关系,父类又称为基类或者超类,子类又称为派生类。
(实线,带空心三角形的在父类那边)
3) 实现关系
实现关系(Implementation),是对接口和实现类之间的关系,<<interface>>表示一个接口,接口没有属性(有属性也要注意都是常量),而且所有的操作都是抽象的,只有操作的声明没有操作的实现。
(虚线,带空心三角形的在接口那边)
4) 关联关系
关联关系(Association)是类与类之间最常见的一种关系,它是一种结构化的关系,表示一类对象与另一类对象之间的关系。关联关系用实线连接,如一个类的对象作为另一个类的成员变量。
关联关系中还有聚合关系和组合关系,都是表示整体和部分之间的关系。不同的是,
在 聚合关系(Aggregation) 中,成员对象是整体的一部分,但是成员对象可以脱离整体对象独立存在。
(实线,带空心菱形的在整体那边)
在 组合关系(Composition) 中,整体对象可以控制成员对象的生命周期,一旦整体对象不存在,成员对象也不存在。
(实线,带实心菱形的在整体那边)
5) 依赖关系
依赖关系(Dependency)是一种使用关系,特定事物的改变有可能会影响到使用该事物的其他事物,在需要表示一个事物使用另一个事物时使用依赖关系,大多数情况下依赖关系体现在某个类A的方法使用了另一个类B的对象作为参数。
(虚线,带箭头,由依赖的一方指向被依赖的一方,如A指向B)
依赖关系通常有三种方式来实现:1、将一个类的对象作为另一个类中方法的参数;2、在一个类的方法中将另一个类的对象作为其对象的局部变量;3、在一个类的方法中调用另一个类的静态方法;