类图(Class Diagram)是描述类、接口、协作以及它们之间关系的图。

类图是系统中静态视图的一部分,静态视图可以包括许多的类图。

静态视图用于为软件系统进行结构建模,它构造系统的词汇和关系,而结构模型的可视化就是通过类图来实现的。

类图由以下基本元素构成:类;接口;协作;关系(依赖、泛化、实现和关联)。

下面用一张图来概括类图的基本内容:

通常以下述3种方法之一使用类图:

1、对系统的词汇建模

用UML构建系统通常是从构造系统的基本词汇开始,用于描述系统的边界,也就是说用来决定哪些抽象是要建模系统中的一部分,哪些抽象是处于要建模系统之外。这是非常重要的一项工作,因为系统最基本的元素在这里被确定。可以用类图描述抽象和它们的职责。

2、对简单协作建模

现实世界中的事物大多是相互联系、相互影响的,将这些事物抽象成类后,情况也是如此。所要构造的软件系统中的类很少有孤立存在的。它们总是和其他类协同工作,以实现强于单个类的语义。因此,在抽象了系统词汇后,系统分析师还必须将这些词汇中是事物协同工作的方式可视化和详述。

3、对逻辑数据库模式建模

在设计一个数据库是,通常使用数据库模式来描述数据库的概念设计。数据库模式建模是对数据库概念设计的蓝本,可以使用类图对这些数据库的模式进行建模。

分类图 Class Diagram的更多相关文章

  1. [UML]UML系列——状态机图statechart diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  2. 状态机图statechart diagram

    [UML]UML系列——状态机图statechart diagram 系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend ...

  3. 活动图activity diagram

    活动图activity diagram 系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类 ...

  4. 顺序图(Sequence Diagram)

    顺序图(Sequence Diagram): 是一种强调对象间消息传递次序的交互图,又称为时序图或序列图.描述了在一个用例或操作的执行过程中对象如何通过消息相互交互,说明了消息如何在对象之间被发送和接 ...

  5. 类图(Class Diagram)

    类图(Class Diagram): 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 类一般由三部分组成: 类名(Class):每个类都必须 ...

  6. 风险识别工具 - 影响图(Influence Diagram)

    原文地址:http://blog.csdn.net/jameszhou/archive/2007/06/24/1664494.aspx PMBOK(2004 3rd 英) P248关于风险识别的图形技 ...

  7. seaborn(2)---画分类图/分布图/回归图/矩阵图

    二.分类图 1. 分类散点图 (1)散点图striplot(kind='strip') 方法1: seaborn.stripplot(x=None, y=None, hue=None, data=No ...

  8. UML时序图(Sequence Diagram)学习笔记

    什么是时序图时序图(Sequence Diagram),又名序列图.循序图,是一种UML交互图.它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作. 让我们来看一看visio2016对时序 ...

  9. Python设计模式 - UML - 定时图(Timing Diagram)

    简介 定时图也是一种交互图,用来描述对象或实体随时间变化的状态或值,及其相应的时间或期限约束.定时图应用较广,并不局限于软件工程领域. 定时图侧重与时间线相关的值或状态的改变,这些改变可能来自于收到消 ...

随机推荐

  1. Eclipse+ADT+Android SDK 搭建安卓开发环境

    Eclipse+ADT+Android SDK 搭建安卓开发环境   要求 必备知识 windows 7 基本操作. 运行环境 windows 7(64位); eclipse-jee-luna-SR2 ...

  2. bind() to 0.0.0.0:80 failed (98: Address already in use)

    You can kill it using: sudo fuser -k 80/tcp And then try restarting nginx again: service nginx start

  3. 【转载】跟我一起云计算(6)——openAPI

    http://www.cnblogs.com/skyme/p/3435565.html 介绍 Open API即开放API,也称开放平台. 所谓的开放API(OpenAPI)是服务型网站常见的一种应用 ...

  4. 五、PackageManager获取版本号

    PackageInfo代表的是关于一个包的所有信息,就相当于一个APP应用的清单文件中收集到的所有信息. 通过这个类我们就可以获取类似版本号等一些信息. 1 2 3 4 5 6 7 8 9 10 11 ...

  5. ssh-key 与 git账户配置以及多账户配置

    http://www.cnblogs.com/dubaokun/p/3550870.html 在使用git的时候,git与远程服务器是一般通过ssh传输的(也支持ftp,https),我们在管理远程分 ...

  6. dedecms5.7文章实现阅读全文功能二次开发

    阅读全文功能其实在很多的流行站点都有的,比如网易,新浪等,随着文章内容的增加,当一个页面有多个分页的时候,就会显示出这个“在本页阅读全文”的链接,点击这个链接之后,出现的,将是这篇文章以没有分页出现的 ...

  7. iOS 之单例,代理,通知,KVO,Block全能解析

    //单例 //.h + (Instannce *)shareInstance; //.m static Instannce *instance = nil; @implementation Insta ...

  8. UI3_CustomUITableViewCell

    // AppDelegate.m // UI3_CustomUITableViewCell // // Created by zhangxueming on 15/7/15. // Copyright ...

  9. python基础:day3作业

    修改haproxy配置文件 基本功能:1.获取记录2.添加记录3.删除记录 代码结构:三个函数一个主函数 知识点:1.python简单数据结构的使用:列表.字典等 2.python两个模块的使用:os ...

  10. AMQ学习笔记 - 09. Spring-JmsTemplate之接收

    概要 JmsTemplate提供了4组*3,共计12个接收用的方法.   JmsTemplate接收所需要的资源ConnectionFactory和Destination,和发送是一致的.   接收的 ...