UML 类图中的概念

类图关系:泛化(继承)、实现、聚合、组合、关联、依赖

类图的详解可在网上查询(推荐https://zhuanlan.zhihu.com/p/24576502

它描述了在一个系统中的对象和他们的关系,能够让我们在正确编写代码以前对系统有一个全面的认识。
一个单独的类图描述系统的一个具体方面,收集类图表示整个系统。基本上,类图表示系统的静态视图。

1:新建项目,或者根据模板创建(刚开始可以New一个新项目),

2:在右侧ModelExplorer中顶级节点或者model节点,右键Add Diagram选择添加Class Diagram

3:在左侧的WorkingDiagrams点击激活需要建模的画布(一个项目中一般会有多个Diagram,需要确定是那个模型在进行设计

4:在Toolbox中选择Class,在绘图区双击或者拖拽绘制视图元素

5:如下图绘制了一个Class的视图元素,增加了一个类型为string 属性,方法1有一个string参数,方法2有一个string 参数同时需要返回一个string结果.

现在我们要实现一个类图设计,需求如下

1:接口-车; 2:实现类-汽车、自行车; 3:轮胎、发动机类组成汽车; 4:BMW是汽车的一种;5:学生需要骑自行车; 6:每个学生都有身份证; 7:每个学生都有班级;

根据需求设计一个类图。

新建空白项目,增加Class Diagram,

接口车--------拖拽一个Interface为视图元素,name属性为车,视图元素车添加属性方法,和说明

实现类汽车、自行车---同上操作拖拽两个视图元素Class,增加连接线Interface,指向车的接口,表示接口的实现;

视图元素线的样式在线属性中可以调整

 实现类轮胎、发动机---同上操作拖拽两个视图元素Class,增加连接线composition,组合关系线可以设置两端关系

实现类BMW---同上操作拖拽视图元素Class,增加连接线Generalization

其它需求的实现操作基本一致,仅连接线表示差异,下图是实现模型后的整体图

技巧关联的重数:

1:  0..*或*---在视图元素的关系中连接线表示0到多个;

2:  0..1---在视图元素的关系中连接线表示0到1个;

3:  1----在视图元素的关系中连接线表示1个;

StarUML之七、StarUML的Class Diagram(类图)示例的更多相关文章

  1. 类图示例-订单系统 / Class Diagram - Order System

    类图示例-订单系统 / Class Diagram - Order System 什么是类图? 类图通过显示它的类和它们之间的关系来概述系统.类图是静态的 - 它们显示交互的内容,但不显示交互时会发生 ...

  2. UML类图示例

  3. 北风设计模式课程---20、UML类图介绍

    北风设计模式课程---20.UML类图介绍 一.总结 一句话总结: 不仅要通过视频学,还要看别的博客里面的介绍,搜讲解,搜作用,搜实例 设计模式都是对生活的抽象,比如用户获得装备,我可以先装备工厂先生 ...

  4. UML精粹3 - 类图,序列图,CRC

    类图Class diagram 类图描述系统中的对象类型,以及它们之间的各种静态关系.类图也展示类的性质和操作,以及应用于对象连接方式的约束.UML中的特性feature,涵盖了性质property和 ...

  5. 练习UML类图中的类的表示

    第一部分:UML类图(class diagram) 类图用来展现一组类.类的特性以及其类相互之间的关系,一个类图由一组类以及它们之间的关系构成,类图用来对系统的领域概念以及静态结构进行建模. 在软件模 ...

  6. 类图uml

    画类图或时序的软件类图astah-community-6_9_0-b4c6e9-jre-setup        先写总体架构再写流程图 即先写类图再流程图 b ^ | a a继承b   工具类是us ...

  7. 转载:UML学习(二)-----类图(silent)

    原文:http://www.cnblogs.com/huiy/p/8552607.html 1.什么是类图 类图(Class diagram)主要用于描述系统的结构化设计.类图也是最常用的UML图,用 ...

  8. 如何用Rational rose创建类图

    UML中各种图形概要: 图名 对照 说明 用例图 use case diagram 用例图表明系统做什么,与谁交互.用例是系统提供的功能,参与者是系统与谁交互,参与者可以是人.系统或其他实体.一个系统 ...

  9. [.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图

    [.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图 1.UML简介 Unified Modeling Language (UML)又称统 ...

随机推荐

  1. es7中数组如何判断元素是否存在

    const arr = [1,2,3,4,5,6] console.log(arr.includes(4)) //true

  2. SpingMvc复杂参数传收总结

    上一篇文章[javaWeb传收参数方式总结]总结了简单传收参数,这一篇讲如何传收复杂参数,比如Long[] .User(bean里面包含List).User[].List.List<Map< ...

  3. 程序员你为什么这么累【三】:编码习惯之Controller规范

    作者:晓风轻本文转载自:https://zhuanlan.zhihu.com/p/28717374 第一篇文章中,我贴了2段代码,第一个是原生态的,第2段是我指定了接口定义规范,使用AOP技术之后最终 ...

  4. 在动作方法中生成输出URL (Generating Outgoing URLs in Action Methods) |

  5. BOZJ-2590 优惠券

    BOZJ-2590 优惠券 题目: 约翰需要买更多的奶牛!交易市场上有n头奶牛等待出售,第ii头奶牛的原价是\(p_i\)元,使用优惠券之后,折扣价为\(c_i\)元.约翰有m元钱和k张优惠券.请问约 ...

  6. Java 添加、读取、删除Excel形状

    本文介绍通过java程序在excel中操作形状(图形)的方法,包括: 1. 添加形状(如设置形状类型/位置/大小.形状颜色填充(单色/渐变色/纹理/图片填充).形状显示或隐藏.形状倾斜角度.添加文本到 ...

  7. redis缓存数据库及Python操作redis

    缓存数据库介绍  NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库,随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站, 特 ...

  8. STM8上电默认电平不对的解决

    首先,手册上说的是对的,STM8/32上电后所有未被初始化的引脚电平全部是浮空的.但是我的程序却出现了一个奇怪的现象 void main(void){ init();//这里初始化时钟,IO ... ...

  9. Realm及相关对象(四)

    Shiro Realm 1.UserRealm 父类 AuthorizingRealm 将获取 Subject 相关信息分成两步:获取身份验证信息(doGetAuthenticationInfo)及授 ...

  10. Oracle监听器

    Oracle 监听器 Listener 是一个重要的数据库服务器组件,在整个 Oracle 体系结构中,扮演着重要的作用.它负责管理 Oracle 数据库和客户端之间的通讯,它在一个特定的网卡端口(默 ...