UML描述模型的内容有三种 分别是  事物、关系和图

事物有:类,接口,用例,组件,结点,交互,包,注释等

类:

类分为三部分,顶部为 类名,中间为 属性,下层为 方法

在属性或方法前面有三种符号分别是:+,-,#;代表属性或方法的可见性级别;

+ public     -    private         # protected

类名:如果是抽象类,类名用斜体表示。非抽象类用正体显示

属性: 可见性(+-#)属性名[:类型][=默认值] 如: +eye:int=2

方法: 可见性(+-#) 方法名([参数名:类型][,参数名:类型])

接口

用例:

UML的关系

关联关系,泛化关系,依赖关系,实现关系

关联关系:

关联关系是有方向的 分为 双向关联和单向关联,双向关联 用一个双向实线箭头表示,单向关联 用一个单向实线箭头表示。上图为一个单向关联,类的表式形式为:

class 企鹅{
            
private 气候 qh;
}

关联关系包含 聚合关系和合成关系

聚合关系:

聚合关系是一种弱的拥有关系,代表B对象可以拥有A对象,但A对象不是B对象的一部分。聚合关系用一个空心棱形和一条实线表示。
如:雁群拥有好多大雁,但是大雁不是雁群的一部分。

合成关系:

合成关系是一种强的拥有关系,表示A对象必须拥有B对象,B对象作为A对象的一部分存在。体现了严格 的局部与整体的关系。合成关系用一个实心棱型和一条实线组成。
如:鸟,必须要有翅膀,翅膀作为鸟的一部分存在,不能单独存在

泛化关系:

泛化关系,相当于继承关系。表示,在父类出现的地方可以用子类来代替,但是反过来则不成立。泛化描述的是 IS A
……的关系。泛化的两种主要用途是:子类重写父类 多态,子类扩展父类 继承
泛化关系用一个空心三角和一条实线表示。
如图:在出现动物的地方我们可以用鸟这个对象,但是如果在出现鸟对象的地方我们则不能用动物对象来替代。

依赖关系

依赖关系表示当对象A发生变化时,对象B也随着变化,则叫做B依赖A。依赖关系用虚线箭头表示。
常用于:做为一个方法的参数(B对象要用A对象做参数),做为方法的返回值(B对象返回A对象),方法中的调用(B对象中调用A对象)。

如上图中:动物的新陈代谢要用氧气和水,代码为
class 动物{
public void
新陈代谢(氧气,水){}

实现关系

实现关系不继承结构,只继承行为。实现关系用来定义接口与实现接口之间的关系。
实现关系常用于接口的实现,用例与实现用例的协作时间。实现关系用一条虚线和一个空心三角组表示或用空心圆加实线表示。

一个完成的UML图

Visio工具 UML的建模相关推荐

  1. 使用Visio进行UML建模

    资料地址: 使用Visio进行UML建模-http://www.qdgw.edu.cn/zhuantiweb/jpkc/2009/rjkf/xmwd/Visio_UmlModel.htm 转载于:ht ...

  2. 使用Visio画UML图(Java)

    2019独角兽企业重金招聘Python工程师标准>>> 1.全面认识UML类图元素:http://cqujsjcyj.iteye.com/blog/387546 2.类UML2:ht ...

  3. Visio画UML图基本操作及技巧解析

    Visio如何添加枚举类型 1.  新建DataType 2. 选择DataType -> Property -> Stereotype -> enumeration 3. 添加其他 ...

  4. UML软件建模StarUML

    Mac哪款UML软件建模器好用呢?StarUML for mac是Mac平台上的一款UML建模器,StarUML for mac提供了几个模版,帮助用户建立使用新的图表,是目前最流行的UML建模工具. ...

  5. 四步轻松实现用Visio画UML类图

    原文链接:四步轻松实现用Visio画UML类图 四步轻松实现用Visio画UML类图 本节和大家一起学习一下用Visio画UML类图的方法,主要有四个步骤,这里和大家分享一下,相信通过本节的学习,你对 ...

  6. startuml如何画流程图_实例介绍用Visio画UML流程图方法

    本文和大家重点讨论一下用Visio画UML流程图方面的内容,通过实例 向大家介绍,相信通过本文的虚席你对用Visio画UML流程图有所了解. 用Visio画UML流程图 在一次会议中看到有个同事在讲解 ...

  7. UML统一建模(语言)和数据库建模

    UML统一建模(语言)和数据库建模 UML统一建模语言(Unified Modeling Language )或标准建模语言,是始于1997年一个OMG标准,它通过图形化语言为软件开发中每个阶段(例如 ...

  8. Jude - 体验UML高速建模

    随着UML的扩大,UML建模工具也越来越庞大.不过,许多功能并不是用户所寻求的.因此,Jude听取用户心声,根据用户需要打造,按照使用习惯设计,轻便简单,友好易用,用户可以轻松使用Jude高速建模,极 ...

  9. VISIO画UML时,框图锁定保护不能调整大小

    使用Visio绘制UML时序图 但是if/else结构的"交互操作数"框图只能调节高度,不能调节宽度. 锁定框图,宽度不能改变. ** 修改选项 ** 文件----选项----高级 ...

  10. UML 软件建模课程期末复习笔记及课程设计报告

    UML 基础概念 模型 概念:是对现实系统本质特征的一种抽象,简化和直观的描述. 特征 反映性 直观性 简化性 抽象性 分类 概念模型 逻辑模型 物理模型 软件模型 概念:指通过软件建模语言对软件的功 ...

最新文章

  1. C进阶 - 内存四驱模型
  2. 页面上表格金额统计汇总
  3. 《新一代城市大脑建设与发展》专家研讨会在京举办
  4. python实现希尔排序
  5. 数字录音系统服务器,Internet呼叫中心坐席全程录音系统录音模块
  6. 【linux高级程序设计】(第十二章)Linux多线程编程 4
  7. vue.js使用例子
  8. [译]预留位置队列PRQueue:多线程程序中消息输入队列和消息输出队列保持同序...
  9. 矩阵连乘问题(c++)
  10. powerDesigner需求建模
  11. 2层框架结构柱子间距_3分钟牢记框架结构要点
  12. [转]java中的值传递和引用传递
  13. 耐思尼克域名注册:通过icann之后和之前的那些小故事
  14. java根据xsd验证json文件_JSON解析器之json schema校验及代码实现
  15. Atititi ui之道 attilax著 v3 s11.docx 1. 概览 2 1.1. 软件设计可分为两个部分:编码设计与UI设计 2 2. 用户界面设计的三大原则是:置界面于用户的控制之下;
  16. 计算机组成原理实验报告 实验五 三人表决电路实验
  17. 能玩游戏的计算机推荐,电脑玩啥端游合适 适合长期玩的游戏有哪些
  18. CCNA(思科网络攻城狮) 滴水之力05
  19. carsin中创建相邻车道车辆插入场景设置
  20. 英雄联盟怎么解除小窗口_英雄联盟手游亚索怎么操作-英雄联盟手游亚索操作攻略...

热门文章

  1. 函数04 - 零基础入门学习C语言35
  2. 每个网页设计者都自以为是
  3. LeetCode—221. 最大正方形
  4. osx doc to html,macos – 在OSX上安装Git HTML帮助
  5. Ubuntu下无法看到共享文件夹的解决办法
  6. 腾讯测试鸿蒙系统,爆料:荣耀 30 Pro已开始测试华为鸿蒙系统
  7. Java 泛形通配符 ?
  8. APP技巧:电脑登录微信,要删除这5个文件!否则别人能查看聊天记录
  9. 网络基础:分享几个路由器设置小技巧,总有用得到的一天!
  10. 后端技术:Java程序员常用的11个API,你都知道吗?