UML—类图


       在UML的静态机制中类图是一个重点,它不但是设计人员关心的核心,更是实现人员关注的核心。建模工具也主要根据类图来产生代码。类图在UML的9个图中占据了一个相当重要的地位。类图显示了一组类、接口、协作以及他们之间的关系。

1.类的表示:

     类的五种表示方法:

     

(注:类的属性、操作中的可见性使用+、#、-分别表示public、protected、private)

2.类的关系:

关系名称

说明

表示

关联

Association

单向关联

唐僧与徒弟是单向关联。

带箭头的直线

双向关联

徒弟与悟空、悟能、悟净是双向关联。

无箭头的直线

自身关联

一些类的属性对象类型为该类本身

回折的带箭头直线

多重性关联

表示一个类的对象与另一个类的对象连接的个数。

在关联直线上标明:1..1/0..*/1..*/0..1/m..n

整体/部分关系

聚合

成员类是整体类的一部分,但成员类可以脱离整体类独立存在,如书和书架的关系。

带空心菱形(指向整体类)的直线

组合

成员类是整体类的一部分,且整体类控制成员类的生命周期,如书和页的关系。

带实心菱形(指向整体类)的直线

泛化

Generalization

定义了一般元素和特殊元素之间的分类关系,类之间的这种泛化关系也就是继承关系,也称为“is-a-kind-of”关系。有单重继承和多重继承之分。

带空心三角的直线,空心三角指向父类。

依赖

Dependence

是一种使用关系,有以下情况:

1. A类是B类方法当中的一个参数。

2. A类是B类方法中的局部变量。

3. A类向B类发送消息,影响B类发生变化。

带箭头的虚线,由依赖方指向被依赖方。

实现

Realization

用来规定接口和实现接口的类或者构建结构的关系。

带空心三角形的虚线

总结

组合、聚合、关联和依赖表示类与类、类与接口间的引用,是横向关系。其强弱关系为:组合>聚合>关联>依赖。实现(和接触)表示类与类、或者类与接口之间的纵向关系。

3.类图的构成: 

——class:一组具有相同属性、方法、关系和语义的对象的描述,一个类实现一个或多个接口。

接口——interface:描述了一个类或构件的一个服务的操作集,接口仅仅是定义一组操作的规范,并没有给出这组操作的具体实现。

协作——collaboration:一个结构事物用于表达静态结构和动态行为的概念组合,表达不同事物相互协作完成一个复杂功能。

关系——dependency、generalization、association、realization

——package:由类、接口、构件、用例、其他包等元素组成,形成的命名空间。

子系统——subsystem:子系统是一种模型元素,它具有包和类的语义。子系统的行为由它所包含的类或其他子系统提供。子系统实现一个或多个接口,这些接口定义子系统可以执行的行为。


4.如何画类图:

1.给定软件系统,根据其功能,能够抽象出类。

2.抽象得到每个类的属性,方法。

3.准确表达类与类之间的关系,用好四种关系,不能只限于用依赖

4.对关系进行修饰。






评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值