UML(Unified Modeling Language)统一建模语言--类图详解
 

2010-05-12 作者:fenglin1985 来源:fenglin1985的blog

 

类图是面向对象系统建模中最常见的图,类图显示了一组类、接口、协作以及它们之间的关系。类图用于对系统的静态设计视图建模。 在UML中类以矩形表示,具有名称、属性、操作、和关系等描述。接下来我们将全面的对类里面的每个元素的表现作出详细的介绍。

  • 类:

    • 在UML中类以一个矩形表示,类的名称用一个字符串表示。
    • 抽象类通过将类名改为斜体字表示。
    • 不能继承的类(叶子类,封闭类)通过在类名下面增加 leaf 特性说明。
  • 属性:
    • 属性在类下面的栏中列出,可以仅显示属性名。
    • 静态属性通过在属性名下加下划线表示。
    • 属性其他特征完整语法: [可见性] 属性名 [':'类型] [多重性] ['='初始值] [{特性串]}]
    • 不能重写属性通过在特性串中增加 leaf 特性说明。
  • 操作:
    • 属性在类下面的第二栏中列出,可以仅显示操作名。
    • 静态操作与静态属性同样通过在名称下加下划线表示。
    • 抽象操作与抽象类同样通过斜体字表示。
    • 操作特征完整语法: [可见性] 操作名 [([方向] 参数名 ':' 参数类型 ['=' 默认值])] [':' 返回类型] [{特征串}]
    • 不能重写的操作与属性一样使用特征串中增加 leaf 表示。
  • 可见性:
    • 可见性通过在属性或方法名称前增加特定的符号表示。公共的(+)私有的的(-)受保护的(#)包内的(~)

接下来我们一起来研究一下类之间的关系。

  • 依赖(dependency)是一种使用关系,他描述一个事物的规约变化可能影响到使用它的另一个事物。个人认为在参数或者方法体中使用到另外的类就是对该类有依赖的关系。use a
  • 泛化(dependency)用于描述子类到父类之间的关系。 Is a kind of
  • 关联(association)是一种结构关系,他描述一个对象与另一个对象相联系。 Has a
    • 双向关联(association)通过A对象可以找到B对象,B对象同样可以找到A对象的关联为双向关联。
    • 单向关联(direction-association)通过A对象可以找到B对象,但通过B对象不能找到A对象的关联为单向关联。
    • 聚合(aggreation)A对象是B对象的一个组成部份,但A对象同时可能是C对象的组成部分这种关联为聚合。
    • 组合(composition)A对象是B对象的一个组成部份,除非B对象将A对象转交给其他对象,否则A对象只能是B对象的组成部分,这种关联为组合。

转载于:https://blog.51cto.com/ezonemax/427990

UML(Unified Modeling Language)统一建模语言--类图详解相关推荐

  1. 【中级软考】UML图(Unified Modeling Language统一建模语言、标准建模语言)

    文章目录 UML图 UML图的作用 主要模型 功能模型 对象模型 动态模型 图的种类 用例图 类图 对象图 包图 活动图 状态图 1.概述: 2.构成要素: 2.1状态(States): 2.2转移( ...

  2. UML ~ Unified Modeling Language ~ 统一建模语言。+ 软件设计原则。

    UML ~ Unified Modeling Language ~ 统一建模语言. 文章目录 UML ~ Unified Modeling Language ~ 统一建模语言. what. 类图. 类 ...

  3. java uml类图教程_Java利器之UML类图详解

    原标题:Java利器之UML类图详解 (点击上方公众号,可快速关注) 来源:伯乐在线专栏作者- Code4Android 如需转载,发送「转载」二字查看说明 前言 UML(Unified Modeli ...

  4. 软件设计-UML类图详解说明

    一. UML类图思维导图 二. 详细分析和介绍 下面就从上面的思维导图开始,详细的介绍UML类图! 1. 什么是UML,概念是什么? UML(Unified Modeling Language)中文统 ...

  5. Java利器之UML类图详解

    前言 UML(Unified Modeling Language)中文统一建模语言,是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对象的.软件密集系统的制品的开放方法.UML展现了 ...

  6. 【Java】UML类图详解-详细易懂

    基本介绍 统一建模语言(Unified Modeling Language,UML)是用来设计软件的可视化建模语言.它的特点是简单.统一.图形化.能表达软件设计中的动态与静态信息. UML 从目标系统 ...

  7. UML概述及UML类图详解

    引言 UML图有很多种,但是并非必须掌握所有的UML图,才能完整系统分析和设计工作.一般说来,在UML图中,只要掌握类图.用例图.时序图的使用,就能完成大部分的工作.也就是说,掌握UML的20%,就能 ...

  8. C++ UML类图详解

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

  9. UML(统一建模语言)类图的六大关系

    在UML类图中,类之间的关系可以分成:关联(association).聚合(aggregation).组合(composition).依赖(dependency).泛化(generalization) ...

最新文章

  1. 他是娱乐圈最低调的人,甘当多年绿叶,没想到竟是鲁迅的侄子
  2. 揭秘罗永浩直播带货幕后之师
  3. 括号匹配检查c语言,c 语言 检查括号匹配 不能运行 ????
  4. matlab平面抛射方程,MATLAB 数学实验 第七章 微分方程与计算机模拟 PPT注记
  5. 使用Apache CXF开发SOAP Web服务
  6. 常用的友元重载运算符OSTREAM
  7. Pandas 中 把Dataframe 格式转化为 array 数组
  8. recyclerview item动画_这可能是你见过的迄今为止最简单的RecyclerView Item加载动画...
  9. 系统架构师学习笔记-论文摘要部分的写法
  10. 总结一下优化算法关系【压缩传感】【图像逆问题】
  11. Java == equal
  12. MongoDB官方C#驱动中查询条件Query用法
  13. 服务器关掉后django项目停止,Django项目关闭debug模式后,静态文件无法加载的解决办法...
  14. 无人机——磁力计/电子罗盘 学习及校准
  15. vant + Vue创建项目全过程
  16. echar图表titile,x轴,y轴样式
  17. magicbookpro做php开发,近乎完美!荣耀MagicBook Pro优缺点解读
  18. 基于node.js + ElementUI 的sass人力资源后台管理系统的实现
  19. 百度员工离职总结:资质平庸的人该怎么办?震惊了无数人!
  20. Html+Css面试题及答案

热门文章

  1. 中小企业监控体系构建实战
  2. select和其元素options
  3. mysql数据库配置优化(占cpu过高问题)
  4. 解决Android单个dex文件不能超过65536个方法问题
  5. 【073】Android 数据存储(SQLite)
  6. 2012年开发者该做的11件事
  7. “越南QQ”——Zing Chat试玩
  8. 自己动手实现分布式任务调度框架
  9. 遇到win7系统电脑没有声音了怎么解决
  10. stripslashes和addslashes的使用方法