类图的详解

简介: 类图的详解

一、类图概要


★类图以反映类的结构(属性、操作)以及类之间的关系为主要目的,描述了软件系统的结构,是一种静态建模方法


★类图中的“类”与面向对象语言中的“类”的概念是对应的,是对现实世界中的事物的抽象

微信图片_20230701151710.png


二、类图中的事物及解释


(一)类


1. 从上到下分为三部分,分别是类名、属性和操作。类名是必须有的


2.类如果有属性,则每一个属性必须有一个名字,另外还可以有其他的描述信息,如可见性、数据类型、缺省值等


3.类如果有操作,则每一个操作也都有一个名字,其他可选的信息包括可见性、参数的名、参数类型、参数缺省值和操作的返回值的类型等

微信图片_20230701151744.png

(二)接口


一组操作的集合,只有操作的声明而没有实现


(三)抽象类


不能被实例化的类,一般至少包含一个抽象操作


(四)模板类


一种参数化的类,在编译时把模板参数绑定到不同的数据类型,从而产生不同的类


微信图片_20230701151757.png


三、类图中的关系及解释


(一)关联关系——描述了类的结构之间的关系。具有方向、名字、角色和多重性等信息。一般的关 联关系语义较弱。

也有两种语义较强,分别是聚合与组合

微信图片_20230701151808.png

1. 聚合关系——特殊关联关系,指明一个聚集(整体)和组成部分之间的关系

微信图片_20230701151827.png

2.组合关系——语义更强的聚合,部分和整体具有相同的生命周期

微信图片_20230701151830.png

微信图片_20230701151846.png


(二)泛化关系——※在面向对象中一般称为继承关系,存在于父类与子类、父接口与子接口之间

微信图片_20230701151858.png微信图片_20230701151901.png

(三)实现关系——对应于类和接口之间的关系

微信图片_20230701151918.png微信图片_20230701151920.png


(四)依赖关系——※描述了一个类的变化对依赖于它的类产生影响的情况。有多种表现形式, 例如绑定(bind)、友元(friend)等

微信图片_20230701151936.png微信图片_20230701151938.png

四、类图与代码的映射


(一)类的映射

微信图片_20230701151955.png


(二)关联关系的映射

微信图片_20230701151958.png

(三)泛化关系的映射

微信图片_20230701152002.png

(四)实现关系的映射

微信图片_20230701152004.png

(五)依赖关系的映射

微信图片_20230701152007.png

五、类图例子


(一)图形编辑器

微信图片_20230701152037.png


(一)演出售票系统

微信图片_20230701152041.png


文章内容扩展学习链接

UML概述

用例图详解

顺序图详解

协作图详解

状态图详解

活动图详解

构件图详解

部署图详解


相关文章
|
6月前
|
uml
UML之类图
UML之类图
96 1
|
1月前
|
存储 Java 数据库
类图
类图
22 3
|
3月前
|
C++
生成c++ 类图
生成c++ 类图
43 0
类图到底该如何画
类图到底该如何画
167 0
|
6月前
|
uml
UML类图
UML类图
87 0
|
6月前
UML-类图和对象图
UML-类图和对象图
98 0
|
程序员 测试技术 uml
UML——类图
类是一组具有相同属性、操作、关系和语义的对象的描述。
|
Java 测试技术 uml
【UML】类图、包图、对象图
【UML】类图、包图、对象图
211 0