设计模式前言——UML类图

  

设计模式前言——UML类图

  

一、UML类图

  

1,类

  

类(类)封装了数据和行为,是面向对象的重要组成部分,是具有相同属性,操作,关系的对象集合的总称。在系统中,每个类都具有一定的职责,职责指的是类要完成什么样的功能,要承担什么样的义务。一个类可以有多种职责,设计得好的类一般只有一种职责。在定义类的时候,将类的职责分解成为类的属性和操作(即方法)。类的属性即类的数据职责,类的操作即类的行为职责。设计类是面向对象设计中最重要的组成部分,也是最复杂和最耗时的部分。
在软件系统运行时,类将被实例化成对象(对象),对象对应于某个具体的事物,是类的实例(实例)。
类图(类图)使用出现在系统中的不同类来描述系统的静态结构,用来描述不同的类以及它们之间的关系。
在系统分析与设计阶段,类通常可以分为三种,分别是实体类(实体类),控制类(控制类)和边界类(边界类)。
实体类:实体类对应系统需求中的每个实体,它们通常需要保存在永久存储体中,一般使用数据库表或文件来记录,实体类既包括存储和传递数据的类,还包括操作数据的类。实体类来源于需求说明中的名词,如学生,商品等。
控制类:控制类用于体现应用程序的执行逻辑,提供相应的业务操作,将控制类抽象出来可以降低界面和数据库之间的耦合度。控制类一般是由动宾结构的短语(动词+名词)转化来的名词,如增加商品对应有一个商品增加类,注册对应有一个用户注册类等。
边界类:边界类用于对外部用户与系统之间的交互对象进行抽象,主要包括界面类,如对话框,窗口,菜单等。
在面向对象分析和设计的初级阶段,通常首先识别出实体类,绘制初始类图,此时的类图也可称为领域模型,包括实体类及其它们之间的相互关系。

  

2, UML类图

  

在UML中,类使用包含类名,属性和操作且带有分隔线的长方形来表示。
设计模式前言——UML类图”> <br/>类图分为三层,第一层是类的名称,如果是抽象类或接口,就用斜体表示,其中接口名称的上部会用& lt; & lt; interface>在修饰;第二层是类的成员变量,通常是字段和属性;第三层是类的成员方法。类的成员变量和成员方法的修饰符分为+ #,,分别表示,保护,私人。<br/>在UML类图中,类一般由三部分组成:<br/>(1)第一部分是类名:每个类都必须有一个名字,类名是一个字符串。<br/>(2)第二部分是类的属性(属性):属性是指类的性质,即类的成员变量。一个类可以有任意多个属性,也可以没有属性<br/> UML规定属性的表示方式为:<br/>可见性名称:类型(=缺省值]<br/>其中:<br/>”可见性”表示该属性对于类外的元素而言是否可见,包括公有(公共),私有(私人)和受保护(保护)三种,在类图中分别用符号+,-和#表示。<br/>“名称“表示属性名,用一个字符串表示。<br/>”类型”表示属性的数据类型,可以是基本数据类型,也可以是用户自定义类型。<br/>“缺省值”是一个可选项,即属性的初始值。<br/>(3)第三部分是类的操作(操作):操作是类的任意一个实例对象都可以使用的行为,是类的成员方法。<br/> UML规定操作的表示方式为:<br/>可见性名称(参数列表)[:返回类型]<br/>其中:<br/>”可见性”的定义与属性的可见性定义相同。<br/>“名称“即方法名,用一个字符串表示。<br/>“参数列表”表示方法的参数,其语法与属性的定义相似,参数个数是任意的,多个参数之间用逗号”、“隔开。<br/>“返回类型”是一个可选项,表示方法的返回值类型,依赖于具体的编程语言,可以是基本数据类型,也可以是用户自定义类型,还可以是空类型(空白),如果是构造方法,则无返回类型。</p>
  <h3>二、类间关系</h3>
  <p>类之间的关系种类:实现(实现),概括(泛化),依赖(依赖),协会(关联),聚合聚(合),组成(组合)。其中,聚合聚(合),组成(合成)属于协会(关联),是特殊的协会关联关系。</p>
  <h4> 1,依赖关系</h4>
  <p>依赖关系(依赖)是一种使用关系,特定事物的改变有可能会影响到使用该事物的其他事物,在需要表示一个事物使用另一个事物时使用依赖关系。大多数情况下,依赖关系体现在某个类的方法使用另一个类的对象作为参数。<br/>关系:依赖用来表示两者之间的依从关系,表现为使用。</p>
  <p>在UML中,依赖关系用带箭头的虚线表示,由依赖的一方指向被依赖的一方。<br/> <img src=

设计模式前言——UML类图