前言
内容
一、类图
类图就是用于对系统中的各种概念进行建模,并描绘出它们之间的关系的图。而建模工具的作用就是生成代码,可见类图的核心地位。何为类图,即为类加上他们之间的关系成为了类图。这就需要我们把类抽象出来了。
在对一个软件系统进行设计和建模的时候,通常是从构造系统的基本词汇开始,包括构造这些词汇的基本属性和行为。系统分析师如果要对所设计的系统清晰认识,还有考虑这些基本词汇之间的关系。而如果把这些行为可视化为图,就是通常所说的类图。
类图包括类,接口和关系
1、类:包括类名,属性(静态),方法(动态)
类名:类的名称是每个类中所必须拥有的元素,用于同其他类进行区分。按照UML约定,类的名称的首字母应当大写。类的名称是正体说明类是可被实例化的,斜体字说明类为抽象类。
属性:类的一个特性,描述了在软件系统中所代表的对象具备的静态部分的公共特征状态,这些特性是对象所公有的。
可见性:公有类型(public),受保护类型(protected),私有类型(private)
操作:操作是指类所能执行的操作,也是类的一个重要组成部分。
可见性:公有类型(public),收保护类型(protected),私有类型(private),实现类型(implementation)
2、接口
接口是在没有给出对象的实现和状态的情况下对对象行为的描述,接口包含操作但不包含属性,且它没有对外界可见的关联。在UML中用一个小圆圈表示。
3、关系
是我们常说的四种关系(上面的链接已给出),我想强调的是关系要用准确,他们的优先级是:实现=泛化>组合>聚合>普通关联>依赖。
上上篇博客讲到了联系:http://blog.csdn.net/ldb987/article/details/53097082
类图实例,理解的还很不到位,随着学习的深入,相信自己对类图对类图会有更深的认识。
二、对象图
对象是类的实例,对象图也可看作是类图的实例。
对象图描述的是系统在某一个特定时间点上的静态结构,是类图的实例和快照,即类图中的各个类在某一个时间点上的实例及其关系的静态写照。
对象图中包含对象和链。其中对象是类的特定实例,链是两个或多个对象之间的独立连接,是关联的实例。通过链可以将多个对象连接起来,形成一个有序列表,称为元组。
类图和关系图的区别
类图 | 对象图 |
类具有3个分栏:名称、属性和操作 | 对象只有两个分栏:名称和属性 |
在类的名称分栏中只有类名 | 对象的名称形式为“对象名:类名”,匿名对象的名称形式为“:类名” |
类的属性分栏定义了所有属性的特征 | 对象则只定义了属性的当前值,以便用于测试用例或例子中 |
类中列出了操作 | 对象图中不包括操作,因为对于同属于同一个类的对象而言,其操作是相同的。 |
类使用关联连接,关联使用名称、角色、多重性以及约束等特征定义。类代表的是对对象的分类所以必须说明可以参与关联的对象的数目 | 对象使用链连接、链拥有名称、角色,但是没有多重性。对象代表的是单独的实体,所有的链都是一对一的,因此不涉及到多重性。 |
学习都是一个过程,记性好的人,看完视频可能会有好多映象,记性不好的人,看完视频感觉什么都没记住。但是随后的总结和画图会强化我们的记忆,让我们对知识有进一步的认识。所以多写博客,多总结。