UML类图

UML图是什么?

UML(Unified Modeling Language)是一种用于软件开发和系统设计的标准建模语言。它提供了一套丰富的图形符号和规范,用于描述和可视化软件系统的结构、行为和交互。

UML图是使用UML语言创建的图形表示,用于描述软件系统的不同方面。UML提供了多种类型的图形符号,每种符号都有特定的用途和表达能力,以便开发人员能够更清晰地传达系统设计的概念和想法。一般说来,在UML图中,只要掌握类图、用例图、时序图的使用,就能完成大部分的工作。也就是说,掌握UML的20%,就能做80%的事情。

用例

请添加图片描述

类图中具体类、抽象、接口和包的表示法

UML类图中具体类、抽象类、接口和包有不同的表示方法。
具体类在类图中用矩形框表示,矩形框分为三层:第一层是类名字。第二层是类的成员变量;第三层是类的方法。成员变量以及方法前的访问修饰符用符号来表示:

“+”表示 public;
“-”表示 private;
“#”表示 protected;
不带符号表示 default。

属性和方法

成员变量以及方法前的访问修饰符用符号来表示:

  • “+”表示 public;
  • “-”表示 private;
  • “#”表示 protected;
  • 不带符号表示 default。

请添加图片描述
这个‘动物’矩形框,它就代表一个类(Class)
左下角的‘飞翔’,它表示一个接口图,与类图的区别主要是顶端有<>显示。第一行是接口名称,第二行是接口方法。接口还有另一种表示方法,俗称棒棒糖表示法,比如图中的唐老鸭类就是实现了‘讲人话’的接口(鸭子本来也有语言,只不过只有唐老鸭是能讲人话的鸭子)。请添加图片描述

interface IFly
{
    void Fly();
}

请添加图片描述

interface ILanguage
{
    void Speak ();
}

类与类,类与接口之间的关系

首先注意动物、鸟、鸭、唐老鸭之间关系符号。

继承

继承关系用空心三角形+实线来表示
请添加图片描述
我举的几种鸟中,大雁是最能飞的,我让它实现了飞翔接口。实现接口用空心三角形+虚线来表示。
请添加图片描述

关联

企鹅和气候两个类,企鹅是很特别的鸟,会游不会飞。更重要的是,它与气候有很大的关联。我们不去讨论为什么北极没有企鹅,为什么它们要每年长途跋涉。总之,企鹅需要‘知道’气候的变化,需要‘了解’气候规律。当一个类‘知道’另一个类时,可以用关联(association)。关联关系用实线箭头来表示。

请添加图片描述
请添加图片描述

聚合

我们再来看大雁与雁群这两个类,大雁是群居动物,每只大雁都是属于一个雁群,一个雁群可以有多只大雁。所以它们之间就满足聚合(Aggregation)关系。聚合表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分[DPE](DPE表示此句摘自《设计模式》(第2版),详细摘要说明见附录二)。聚合关系用空心的菱形+实线箭头来表示。请添加图片描述
请添加图片描述

合成(组合)

合成(Composition,也有翻译成‘组合’的)是一种强的‘拥有’关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样[DPE]。在这里鸟和其翅膀就是合成(组合)关系,因为它们是部分和整体的关系,并且翅膀和鸟的生命周期是相同的。合成关系用实心的菱形+实线箭头来表示。另外,你会注意到合成关系的连线两端还有一个数字‘1’和数字‘2’,这被称为基数。表明这一端的类可以有几个实例,很显然,一个鸟应该有两只翅膀。如果一个类可能有无数个实例,则就用‘n’来表示。关联关系、聚合关系也可以有基数的。
请添加图片描述

依赖关系

动物几大特征,比如有新陈代谢,能繁殖。而动物要有生命力,需要氧气、水以及食物等。也就是说,动物依赖于氧气和水。他们之间是依赖关系(Dependency),用虚线箭头来表示。

请添加图片描述

abstract class Animal
{
    public Metabolism (Oxygen oxygen,Water water)
    {
 
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值