UML系列02之UML类图(1)
类图介绍
类图,是UML(统一建模语言)中用于描述"类"以及"类与类"之间关系的示意图。它形象的描述出了系统的结构,帮助人们理解系统。
类图是在"所有的UML图"中,实用频率非常之高;掌握它对于我们软件设计,以及交流都很有帮助。
对于类图而言,它的基本单位是类。类主要由三部分组成:类名、属性、操作(函数)。UML类的表示大致如下:
实体类的UML表示
实体类对应的Java代码
public class Student { private int id; protected int age; public String name; private void setId(int id); private int getId() ; protected void setAge(int age); protected int getAge() ; public void setName(String name); public String getName() ; }
实体类的UML示例
1. 类名
类名是类的名称。
2. 属性
UML类图中,属性的基本格式: 可见性 属性名称: 类型 [=缺省值]
(01) 可见性 -- 表示该属性对于类外的元素而言是否可见。 主要包括公有(public)、私有(private)和受保护(protected)三种,在类图中分别用符号+、-和#表示。
标志 | 可见性 |
+ | public |
- | private |
# | protected |
(02) 名称 -- 表示属性名。 (03) 类型 -- 表示属性的数据类型。可以是基本数据类型,也可以是用户自定义类型。 (04) 缺省值 -- 属性的初始值。它是一个可选项。
3. 操作
UML类图中,属性的基本格式: 可见性 名称(参数类表) [:返回类型]
(01) 可见性 -- 表示该属性对于类外的元素而言是否可见。它的表示方法与"属性的可见性"相同。
标志 | 可见性 |
+ | public |
- | private |
# | protected |
(02) 名称 -- 表示方法名。 (03) 参数列表 -- 表示方法的参数。参数个数是任意的,多个参数之间用逗号","隔开。 (04) 返回类型 -- 表示方法的返回值类型。它是一个可选项;可以是具体的返回类型,可以是void,也可以无返回类型(构造方法)。
UML系列02之UML类图(1)的更多相关文章
- UML系列02之 UML类图(一)
概要 本章介绍类图中类的UML表示方法.内容包括:类图介绍实体类的UML表示抽象类和接口的UML表示 转载请注明出处:http://www.cnblogs.com/skywang12345/p/352 ...
- UML系列02之 UML类图(2)
UML类图的几种关系 在UML类图中,关系可以分为4种: 泛化, 实现, 关联 和 依赖.1. 泛化 -- 表示"类与类之间的继承关系".2. 实现 -- 表示"类与接口 ...
- uml系列(四)——类图
类图是uml的核心.学习类图,总共须要掌握三个部分:类:类之间的关系:类图怎么画. 首先,类.老规矩,先来张图. 类是什么:举个简单的样例:猫.狗.猪三个都是动物.这里面的"动物" ...
- UML系列03之 UML类图(二)
概要 在"UML系列02之 UML类图(一) "中介绍了类图的基本构成--类的UML表示方法.本文是接着前文,继续对"UML的类图"中几种关系进行介绍.介绍的主 ...
- UML系列04之 UML时序图
概要 本章对UML的时序图进行介绍,主要内容包括:时序图介绍时序图组成 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3523355.html 时序图介绍 ...
- UML从需求到实现---类图(2)
上节写到了UML中的类图:UML从需求到实现---类图(1) 写完以后总觉得写的不够详细.里面很多细节没有说到.一篇文章就把强大的面向对象的类说完.当然是不可能的.这次我再补充一些关于UML中类图和类 ...
- UML学习(二)-----类图
UML学习(二)-----类图 http://www.cnblogs.com/silent2012/archive/2011/09/07/2169946.html http://www.cnblogs ...
- UML从需求到实现---类图(1)
上次写到了UML的包图,用例等:接上:UML从需求到实现---包图 按照UML中图的出现顺序.当做完包图以后.我们下一步要做的当然是类图,类图也是UML中的三大核心图之一. 看到很多文章在描述类图的时 ...
- (转)UML实践----用例图、类图、对象图、顺序图、协作图、状态图、活动图、组件图、配置图
面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML ...
随机推荐
- Android -- 浮动组建
在开发Android应用时,加新功能是必不可少的,我们加入了新的功能,有的一看界面就可以看出来,但是有的新功能就比较隐蔽,也就是用户很难知道你添加了这个新功能,这个时候就需要用户在打开我们的应用时给出 ...
- github实践操作
一.本地仓库的创建和提交 1.下载并安装Git http://msysgit.github.io/,安装完成后在本地电脑创建一个git仓库并初始化本地仓库 2.在git目录下创建一个Readme.tx ...
- 向Array中添加二分插入排序
二分插入排序思路 先在有序区通过二分查找的方法找到移动元素的起始位置,然后通过这个起始位置将后面所有的元素后移. 二分插入排序实现 Function.prototype.method = functi ...
- JavaScript 类型转换
在 JavaScript 中有 5 中不同的数据类型: string number boolean object function 3 种对象类型: Object Date Array 2 个不包含任 ...
- android开发 缩放到指定比例的尺寸
一种通过matrix矩阵缩放: //使用Bitmap加Matrix来缩放 public static Drawable resizeImage(Bitmap bitmap, int w, int h) ...
- 使用Java 8 Lambda表达式对Employee类进行操作
1,首先定义Employee类. package coffee.how.to.program.early.objects.chapter15; public class Employee { priv ...
- BZOJ2039 [2009国家集训队]employ人员雇佣
AC通道:http://www.lydsy.com/JudgeOnline/problem.php?id=2039 鉴于一开始看题如果不仔细是看不懂题目的,还是说一下题目大意 [题目大意]:给定n个人 ...
- Hdu 1429 胜利大逃亡(续) 分类: Brush Mode 2014-08-07 17:01 92人阅读 评论(0) 收藏
胜利大逃亡(续) Time Limit : 4000/2000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Subm ...
- Linux 的多线程编程的高效开发经验
http://www.ibm.com/developerworks/cn/linux/l-cn-mthreadps/ 背景 Linux 平台上的多线程程序开发相对应其他平台(比如 Windows)的多 ...
- 如何开始你的CTF比赛之旅-网站安全-
在过去的两个星期里,我已经在DEFCON 22 CTF里检测出了两个不同的问题:“shitsco ”和“ nonameyet ”.感谢所有 的意见和评论,我遇到的最常见的问题是:“我怎么才能在CTFs ...