【读书笔记】大话设计模式—UML类图

类图显示了系统的静态结构,用于描述系统中所包含类以及它们之间的相互关系,帮助人们更好的理解系统构造,是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据。

1、类

类封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。在系统中,每个类都具有一定的职责,职责指的是类要完成什么样的功能,要承担什么样的义务。类包含类的属性和操作行为。在程序运行中,类将被实例化成对象,即类的实例。
在系统分析和设计阶段,类通常分为三种【实体类】、【控制类】、【边界类】。

【实体类】

实体类对应系统需求中的每个实体,它们通常需要保存在永久存储体中,一般使用数据库表或文件来记录,实体类即包含存储和传递数据的类,还包括操作数据的类。实体类来源于需求说明中的名词,如学生,商品等。

【控制类】

控制类用于体现应用程序中的执行逻辑,提供相应的业务操作,将控制类抽象出来可以降低界面和数据库之间的耦合度。控制类一般是由动宾结构的短语转换来的名词(动宾结构==动词+名词),比如增加商品==>(对应)商品增加类,注册==>(对应)用户注册类。

【边界类】

边界类用于对外部用户与系统之间的交互对象进行抽象,主要包括界面类,比如对话框、窗口、菜单等。
总:在面向对象分析和设计的初级阶段,通常首先识别出实体类,绘制初始类图,此时的类图也可称为领域模型,包括实体类及其它们之间的相互关系

2、UML类图

类的组成包括 【类名】、【属性】、【操作】,用分割线分隔成3个小长方形。例如:定义一个Employee类,它包含属性nameageemail,以及操作modifyInfo(),在UML类图中该类如图1所示:

public class Employee {  
    private String name;  
    private int age;  
    private String email;  
      
    public void modifyInfo() {  
        ......  
    }  
}  

类的组成:

(1)【类名】:类名是一个字符串

(2)类的属性类的成员变量。形式为  可见性  名称:类型[ = 缺省值]

可见性:表示该属性对于类外的元素是否可见。有4种:public(公有+)、protected(包以及子类 #) 、prviate(私有-)在类图中符号 +、#、-分别表示。

名称:表示属性名称,字符串

类型:属性的数据类型,可以是基本数据类型或是用户自定义类型。

缺省值:可选项,即属性的初始值。

(3)类的操作:操作是类的任意一个实例对象都可以使用的行为,是类的成员方法

格式:可见性 名称(参数)[: 返回类型]

参数:表示方法参数,多个参数用逗号隔开。


注意:由于在Java语言中允许出现内部类,因此可能会出现包含四个部分的类图,如图3所示:

3、接口表示

接口是一种特殊的类,所有接口都是有构造型的类。

表示方式:实线小圆圈   +   名称

接口关系:接口同样具有依赖和泛化的关系

依赖:一个类通过依赖关系与接口相连接,仅仅依赖于接口中的操作

 泛化:跟类之间泛化关系同理




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值