http://blog.csdn.net/sds15732622190/article/details/48860711

前言

说到UML,相信大家就能立刻反应出其中的类图,为什么这么说呢,类图和用例图我觉得是UML最精髓的部分,在软件开发与管理中起着巨大的作用。接下来介绍一下类图。

定义

由许多(静态)说明性的模型元素(例如类、包和它们之间的关系,这些元素和它们的内容互相连接)组成。类图可以组织在(并且属于)包中,仅显示特定包中的相关内容。

组成

如例图,类一般由名称,属性和方法组成。分别写在三个方框里。

类(Class)

1、类名

不可省略。
书写规范:正体字(可被实例化),斜体字(抽象类)。

2、属性(attributes)

书写规范:修饰符 [描述信息] 属性、方法名称 [参数] [:返回类型|类型]
可见性修饰符:(+)public;(-)private;(#)protected;(默认)package(包)级别的可见性。

3、方法

同属性。

关系

泛化(Inheritance)

表示方法:直线加空心三角形。
①单重继承(一个子类有且只有一个父类)
②多重继承(一个子类有两个或两个以上父类)

关联关系(Association)

①简单关联

表示方法:直线

(1)单向关联(使用箭头)

(2)双向关联

(3)自身关联

②聚合关系(Aggregation)

整体和部分,松耦合,可以独立存在,时间不分先后。

表示方法:空心菱形。

③组合关系(Composition)

整体和部分,紧耦合,不可独立存在,时间存在先后。

表示方法:实心菱形。

依赖关系(Dependency)

即为使用关系。
表示方法:虚线箭头。

实现关系

一个类元描述了另一个类元保证实现的契约。
表示方法:虚线加空心三角。

协作

协作是指一些类、接口和其他的元素一起工作提供一些合作的行为,这些行为不是简单地将元素加能得到的。例如:当你为一个分布式的系统中的事务处理过程建模型时,你不可能只通过一个类来明白事务是怎样进行的,事实上这个过程的执行涉及到一系列的类的协同工作。使用类图来可视化这些类和他们的关系。

接口

类和接口的实现关系,接口用圆表示。

要点

1、给定一个软件系统,根据软件系统特征抽象得到类。
2、抽象得到每个类的属性方法。
3、正确表达出类和类的关系。(不能只用依赖关系(太弱);能用关联时要用关联;能用组合就不用聚合;能用聚合就不用一般关联;能用一般关联就不用依赖;该用接口实现的要用接口实现;需要继承的要用继承。)
4、用准确关系进行建模后要进行修饰(名称,属性等)。

机房收费系统类图

欢迎大家提出宝贵的建议。

总结

我感觉类图是UML图中相对较难的一张,如何画好类图是我们需要学习的,如何完整的找出具体类,抽象类不是画一两张图就能学会的,所以我们要多把握画图的机会,画好类图,学好UML。

转载于:https://www.cnblogs.com/telwanggs/p/6782398.html

【UML】类图Class diagram(转)相关推荐

  1. UML类图(Class Diagram)整理

    类图定义:描述类.接口.协作以及他们之间关系的图,用来显示系统中各个类的静态结构. 类图包含7个元素:类(Class).接口(Interface).协作(Collaboration).依赖关系(Dep ...

  2. IDEA源码阅读利器 — UML类图插件Diagram

    来源:https://www.cnblogs.com/deng-cc/p/6927447.html 最近正好也没什么可忙的,就回过头来鼓捣过去的知识点,到 Servlet 部分时,以前学习的时候硬是把 ...

  3. UML类图(Class Diagram)中类与类之间的关系及表示方式

    类之间大体分为5种关系: 1,依赖关系(Dependency) 单向,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类,是一种"use a"关系 如果A依赖于B,则 ...

  4. java uml类图举例,uml类图(uml类图实例作业)

    原发布者:dzq21cn 第4章UML类图[学习目标]·定义类图·为什么要建模类图·类图的主要标记符号·如何建模类图4.1UML基本类图面向对象设计的基础就是使用类.. UML是统一建模语言,一般用来 ...

  5. 设计模式(0):UML类图(Class Diagram)

    文章目录 一. 基本概念 1. 泛化(Generalization) 2. 实现(Realization) 3. 关联(Association) 4. 聚合(Aggregation) 5. 组合(Co ...

  6. 【转】UML基础: 第1部分 - 类图 (Class Diagram)

    类图 类图是一个静态图.它代表了应用程序的静态视图.类图不仅用于可视化,描述和记录系统的不同方面,还用于构建软件应用程序的可执行代码. 类图描述了一个类的属性和操作,以及对系统施加的约束.类图被广泛用 ...

  7. 最全Pycharm教程(43)——Pycharm扩展功能之UML类图使用 代码结构

    版权声明:本文为博主原创文章,转载时麻烦注明源文章链接,谢谢合作 https://blog.csdn.net/u013088062/article/details/50353202 1.什么是UML ...

  8. idea添加database插件_IDEA高级玩法:集成JIRA、UML类图插件、SSH、FTP、Database管理......

    优质文章,第一时间送达 上一篇: 下一篇:(已修复) 作者: 菩提树下的杨过 出处: http://yjmyzz.cnblogs.com dea还有很多高大上的功能,易用性几乎能与vs.net媲美,反 ...

  9. 从零开始单排学设计模式「UML类图」定级赛

    阅读本文大概需要 3.5 分钟. 本篇是设计模式系列的开篇,虽然之前也写过相应的文章,但是因为种种原因后来断掉了,而且发现之前写的内容也很渣,不够系统. 所以现在打算重写,加上距离现在也有一段时间了, ...

  10. IDEA高级用法:集成JIRA、UML类图插件、SSH、FTP、Database管理...

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:菩提树下的杨过   出处:http://yjmyzz.cnb ...

最新文章

  1. greenplum安装札记(待完善)
  2. Bleve:来自Couchbase、基于Go语言的全文索引与检索库
  3. python数据类型-Python核心数据类型概览
  4. ubuntu14.04管理员密码忘记的解决方法
  5. 用代码获取Oracle服务名清单
  6. 三星电子时隔近3年再次成为全球最大半导体厂商
  7. ORA-00257:archiver error问题处理方法
  8. 释放tcp连接的命令是_TCP协议详解
  9. Hibernate 基本类型
  10. C51单片机实验系列:循环左移点亮流水灯_crol_
  11. android qq skype,蓝牙耳机与IVT组合实现在电脑聊天、打电话(QQ、Skype)
  12. 方舟服务器制作修改,方舟生存进化服务器模式设置教程
  13. HTMLCSS仿京东注册页面制作静态页面总结
  14. 这就是你日日夜夜想要的docker!!!---------Harbor私有仓库
  15. 电脑下载速度一快电脑就卡的问题解决
  16. 港股2017年表现全球最好,区块链将助推新经济牛市?
  17. html使用 katex 数学公式
  18. 为什么北京人和上海人都成了“杭漂“?
  19. while中的continue用法,getchar及putchar使用方法
  20. 《卓有成效的管理者》读书分享

热门文章

  1. MySQL企业级主从复制
  2. apirestful php自动测试,PHP实现自动识别Restful API的返回内容类型
  3. (33)VHDL实现异步复位D触发器
  4. (26)FPGA计数器设计(VHDL代码实现)
  5. (15)Zynq FPGA 通用IO介绍
  6. 西华大学计算机专业怎么样呢,西华大学(专业学位)计算机技术考研难吗
  7. C语言解析动态html,【c语言】使用gumbo解析HTML
  8. STC51-l2C总线
  9. mysql数据库内存分配_MySQL OOM 系列一 Linux内存分配
  10. 布局管理——复习示例