什么是类图?

的UML 类图是用于构建和可视化的面向对象的系统的图形表示法。统一建模语言(UML)中的类图是一种静态结构图,通过显示系统来描述系统的结构:

  • 类,
  • 他们的属性(或属性),
  • 操作(或方法),
  • 和对象之间的关系。

什么是类 (Class)?

Class是对象的蓝图。对象和类是齐头并进的。如果不谈另一个,我们就不能谈论一个。面向对象设计的整个要点不是关于对象,而是关于类,因为我们使用类来创建对象。所以一个类描述了一个对象是什么,但它不是对象本身。

实际上,类描述了对象的类型,而对象是类的可用实例。每个对象都是从同一组蓝图构建的,因此包含相同的组件(属性和方法)。标准含义是对象是类和对象的实例 - 对象具有状态和行为。

狗有状态 - 颜色,名称,品种以及行为 - 摇摆,吠叫,吃。对象是类的实例。

UML类表示法

类表示封装状态(属性)和行为(操作)的概念。每个属性都有一个类型。每个操作都有一个签名类名是唯一的必填信息

Class名称:

  • 类的名称出现在第一个分区中。

Class属性:

  • 属性显示在第二个分区中。
  • 冒号后显示属性类型。
  • 属性映射到代码中的成员变量(数据成员)。

Class操作(方法):

  • 操作显示在第三个分区中。它们是班级提供的服务。
  • 方法的返回类型显示在方法签名末尾的冒号之后。
  • 方法参数的返回类型显示在参数名称后面的冒号之后。操作映射到代码中的类方法

Class可见性

类中的属性和操作名称之前的+, - 和#符号表示属性和操作的可见性。

  • +表示公共属性或操作
  • - 表示私有属性或操作
  • #表示受保护的属性或操作

参数方向性

操作(方法)中的每个参数可以表示为in,outinout,其指定其相对于调用者的方向。此方向性显示在参数名称之前。

类图的视角

透视的选择取决于您在开发过程中的距离。例如,在域模型的制定过程中,您很少会超越概念角度分析模型通常包含概念和规范视角的混合。设计模型开发通常首先着重于规范视角,并演变为实现视角

可以从各种角度解释图表:

  • 概念:代表域中的概念
  • 规范:重点是软件中抽象数据类型(ADT)的接口
  • 实现:描述类如何实现其接口

视角影响要提供的细节量以及值得呈现的关系类型。如上所述,类名是唯一的必填信息。

类图是一种中央建模技术,几乎贯穿所有面向对象的方法。该图描述了系统中对象的类型以及它们之间存在的各种静态关系。

关系

有三种主要的关系是重要的:

  1. 关联  - 表示类型实例之间的关系(一个人为公司工作,公司有多个办公室。
  2. 继承  - 在OO中使用的ER图最明显的补充。它与OO设计中的继承有直接对应关系。
  3. 聚合  - 聚合,面向对象设计中的一种对象组合形式。

类图示例:GUI

类图还可以附加到类或关系的注释。

免费的UML软件工具

在本文中,我将介绍两个UML工具:

  • Visual Paradigm Community Editon(FREE)是一个具有特征建模功能的桌面UML工具。(可能更新到商业版)
  • Visual Paradigm Online适用于一般uml和其他图表绘图。

30类图示例

  • 免费类图示例和模板可在在线类图软件中编辑:Visual Paradigm Online。
  • 使用模板作为起点来创建自己的类图。
  • 单击以立即编辑类图示例

为方便起见,以下示例在Visual Paradigm Online中设置。您无需配置或安装即可直接试用,玩得开心!

基于星形的局域网

基于令牌环的LAN

公司结构

了解关系

文件输出(使用泛化)

电话(协会的使用)

GoF设计模式 - 代理

GoF设计模式 - Flyweight

GoF设计模式 - 门面

GoF设计模式 - 装饰

GoF设计模式 - 复合

GoF设计模式 - 桥梁

GoF设计模式 - 适配器

GoF设计模式 - Singleton

GoF设计模式 - 原型

GoF设计模式 - 工厂方法

GoF设计模式 - 生成器

GoF设计模式 - 抽象工厂

GoF设计模式 - 访客

GoF设计模式 - 模板方法

GoF设计模式 - 战略

GoF设计模式 - 状态

GoF设计模式 - 观察者

GoF设计模式 - 纪念品

GoF设计模式 - 调解员

GoF设计模式 - 迭代器

GoF设计模式 - 口译员

GoF设计模式 - 命令

GoF设计模式 - 责任链

类图 - 订单处理

类图 - 类和包约束

类图 - 包中的类(航空公司)

售票

自我联想

协会类和自我联想

销售订单系统

汽车

  • 全功能免费UML工具 - Visual Paradigm社区版(桌面)

其他推荐读物

  • UML类图教程
  • 如何绘制类图?

即时免费在线UML软件:超过30个类图示例相关推荐

  1. bullmind在线uml软件,在线流程图软件

    您如何创建AWS图表? bullmind在线uml软件为您提供了一整套AWS图标和一个简单的拖放绘图平台.系统管理员和网络专业人员可以在几秒钟内绘制AWS云基础架构. bullmind在线uml软件功 ...

  2. bullmind在线uml软件

    bullmind在线UML软件 UML是Unified Modeling Language的简称,是软件启垦界的一套尺度,UML没有仅可用于软件安排,也不妨用于软件需要分解.但是UML并没有是强迫尺度 ...

  3. bullmind在线uml软件的好处

    它解释了业务建模,企业架构和OOAD等概念.要理解UML模型,不需要了解详细的技术知识. UML展示了未来的建模,其中整个应用程序是从高级UML模型生成的,并突出显示了在企业中采用UML的最佳实践. ...

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

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

  5. UML从需求到实现---类图(2)

    上节写到了UML中的类图:UML从需求到实现---类图(1) 写完以后总觉得写的不够详细.里面很多细节没有说到.一篇文章就把强大的面向对象的类说完.当然是不可能的.这次我再补充一些关于UML中类图和类 ...

  6. 免费在线工艺流程图软件 + 示例

    在线创建流程图 VP Online是最好的流程图软件,因为它提供了丰富的强大编辑功能和符号,适合不同的行业和目的.您可以通过拖放轻松映射流程,并通过导出和共享功能与他人共享您的设计. 制作流程图 特色 ...

  7. 免费在线接线图软件 + 示例

    免费快速简单的接线图设计 易于使用的接线图工具专为希望轻松快速创建接线图的每个人而设计.拖放界面,以及广泛的接线图符号和编辑功能使创建任何类型的接线图变得如此简单. 丰富的接线图符号 使用内置接线图符 ...

  8. ****** 五十 ******、软设笔记【UML分析和意义】-类图、对象图、状态图、活动图、顺序图、协作图、构件图、部署图,动静态模式...

    一.类图(Class Diagram) 描述一组类.接口.协作已经它们之间的图,用来显示系统中各个类的静态结构图. 类之间的关系(relationship) *依赖(dependency) *泛化(g ...

  9. UML 建模步骤 用例图 类图 对象图 包图 顺序图/时序图 状态图 活动图 协作图

    统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明.可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言. UML是面向对象设计的建 ...

最新文章

  1. C# 返回值为 listT
  2. 法国呼叫服务公司Aircall获得800万美元融资
  3. JAVA同时输入用户名和密码_用java模拟设计一个简单的“用户注册”程序。当用户输入用户名和密码时,单击“注...
  4. Thread pool引起的程序连接数据库响应慢
  5. C语言归并排序Merge Sort算法(附完整源码)
  6. 【转载】查看MSSQL数据库每个表占用的空间大小的方法
  7. 记一次ORM的权衡和取舍
  8. 2017.3.18 糖果 思考记录
  9. 数据挖掘:模型选择——集成算法与树模型
  10. 【算法学习】蝙蝠算法简介
  11. 求2020 CFA二级notes资源,谢谢!
  12. 页游游戏市场发展随笔
  13. 前端三剑客---HTML
  14. scala中match使用的坑Scala.matchError:(of class java.lang.String)
  15. 外贸企业邮箱可以撤回邮件吗?如何撤回已发送的邮件?
  16. JS实现当前日期是第几周
  17. 【巡店软件系统开发】1、软件架构及基础功能的设定
  18. 架构专家李伟山:电商系统之订单系统
  19. linux开篇——硬盘和mbr简介
  20. 一文尽览!弱监督语义/实例/全景分割全面调研(2022最新综述)

热门文章

  1. golang 调用chatGPT
  2. 一文读懂电子工程师的产品开发流程
  3. Windows7安装包英文版和中文版的差异揭秘
  4. 博主Qt+ffmpeg实现的导播台
  5. Mac Office 2016 卸载
  6. 【我的OpenGL学习进阶之旅】OpenGL ES 3.0新功能
  7. 使用中遇到阿里云网站备案的基本概念类问题怎么解决?
  8. 全景vr城市展示,足不出户就可以欣赏其他城市的风光
  9. AI开发之——Leonardo—账号注册(1)
  10. Python - 面对对象(基础)