在对一个软件系统进行设计和建模的时候,通常是从构造系统的基本词汇开始,包括构造这些词汇的基本属性和行为。系统分析师如果要对所设计的系统清晰认识,还有考虑这些基本词汇之间的关系。而如果把这些行为可视化为图,就是通常所说的类图。
类图(Class Diagram)是描述类、接口、协作以及它们之间关系的图,用来显示系统中的各个类的静态结构。
类图包括3方面内容:
1.类(Class);
2.接口;
3.关系;
类
类是对一组具有相同属性、操作、关系和语义的对象的描述。
主要包括:类的名称(ClassName)、属性(Attribute)和操作(Operation,也可以称为方法)
名称(ClassName)
是每个类所必有的构成,用于和其他类相区分。类名称是一个文本串,可分为简单名称和路径名称。其中用类所在的包的名称作为前缀的类名叫做路径名。如图:左边为简单名称,右边的为路径名称(Title 属于Business包,包和类名之间有两个冒号)。
属性(Attribute)
描述了该类的一些特性,这些特性是这类对象所共有的。
类属性的语法为:
[可见性] 属性名 [:类型][=初始值] [{属性字符串}]
[ ]中的部分是可选的,具体细节就不在赘述。
操作(又称方法)(Operation)
是对类的对象所能做的事务的抽象。一个类可以有任何数量的方法或者根本没有方法。
类方法的语法为:
[可见性] 方法名 [(参数表)][:返回类型] [{属性字符串}]
属性和方法有如下两例:动物类和学生类
接口
接口是在没有给出对象的实现和状态的情况下对对象行为的描述。接口包含操作但不包含属性,且它没有对外界可见的关联。
在UML中,接口用一个带有名称的小圆圈表示的,并且通过一条实线与它的模型元素相连接,如下图
有时候为了显示接口中的操作,接口被指定为一个使用普通类矩形符号的带有构造型<<interface>>的类,如下图
关系
关联关系;
依赖关系;
泛化关系;
实现关系;
写到这里,我突然意识到以前发表的一篇博文,写的就是这四种关系,看来当时理解偏了(当时还以为UML中的关系全部都是那四种呢,文章名称改为《UML类图中的四种关系》就完美了)。所以此处对这四种关系就不再赘述,详情参见
《盘点UML中的四种关系》 来自<http://blog.csdn.net/haovip123/article/details/24735721>
最后附上一张机房收费系统的类图
对UML的各种图认识尚且浅显,如果哪里有错误,还望大牛指正!