寂然解读设计模式 - UML类图及类的六大关系

I walk very slowly, but I never walk backwards 

UML类图&类的六大关系


寂然

大家好~,我是寂然,本节课呢,我来给大家介绍UML类图&类的六大关系,说起UML类图,前面在讲解设计模式原则的时候,其实我们就接触到了UML类图,各位小伙伴如果有UML类图的基础,这个阶段大家可以跳过,直接进入后面设计模式的学习,如果大家没有系统的接触过UML类图,就可以通过本教程来掌握UML类图的使用,以及梳理类的六大关系,后面的设计模式中会大量使用UML类图来描述,大家可以循序渐进,话不多说,我们直接进入正题,老规矩,首先带大家了解一下UML以及UML类图的官方定义

官方定义

UML - Unified modeling language UML (统一建模语言),是一种用于软件系统分析和设计的语言工具,

用于帮助软件开发人员进行思考和记录思路的结果

UML图分为很多种,类图是描述类与类之间的关系的,是 UML 图中最核心的,UML类图定义如下

UML类图 - 用于描述系统中的类(对象)本身的组成和类(对象)之间的各种静态关系图

OK,大家先简单了解下概念,下面我们对于UML图以及分类进行基本的介绍

基本介绍

UML 本身是一套符号的规定,就像数学符号和化学符号一样,这些符号用于描述软件模型中的各个元素和他们之间的关系,比如类、接口、实现、泛化、依赖、组合、聚合等,是一种图形化语言,如图所示


在这里插入图片描述


画 UML 图与写文章差不多,都是把自己的思想描述给别人看,关键在于思路和条理,例如下面示例的,某成型的UML图 ,所以用一句话概括UML图,使用图形和符号描述软件模型中的各个元素和他们之间的关系

建模工具

使用 UML 来建模,常用的工具有很多种, 也可以使用一些插件来建模,下面我们简要介绍一下

  • word,利用word工具可以绘制简单的UML图,但是这是一种非专业的手段,而且绘制起来比较麻烦
  • 利用VISIO工具进行UML图的绘制
  • 利用PowerDesigner工具绘制UML图形,PowerDesigner支持标准数据建模UML
  • 利用Eclipse中的AmaterasUML插件,也可以进行UML的绘制
  • IDEA中可以使用PlantUML插件来画类图,也可以下载安装UML Support插件 附录图

等等,当然还有一些其他好用开源的画UML类图的软件,大家可以自行下载,根据环境要求以及个人的习惯进行选择,这里我们使用VISIO工具进行UML图的绘制,以及在idea中介绍UML Support插件 自动生成类图

UML 图分类
  • 用例图(use case)
  • 静态结构图:类图、对象图、包图、组件图、部署图
  • 动态行为图:交互图(时序图与协作图)、状态图、活动图

这里简单介绍一下分类,对于各个类型的UML图的形式以及区别,这里不做详述,本章节重点需要大家掌握的是类图上面提到,类图是描述类与类之间的关系的,同时也是 UML 图中最核心的,在讲解设计模式时,我们必然会使用类图,为了小伙伴们在听设计模式的时候不会带着朦胧,所以我们来带着大家画类图,以及梳理类的六大关系

依赖关系

是一种使用关系,即一个类的实现需要另一个类的协助,逻辑上能用"use a"表示, 只要是在类中用到了对方,那么他们之间就存在依赖关系,如果没有对方,无法通过编译 ,需要注意的是,其他五种关系都是依赖关系的特例

代码体现
  • 类中用到了另一个类
  • 另一个类的成员属性
  • 另一个类方法的返回值类型
  • 另一个类方法接收的参数类型
  • 另一个类方法内部使用到
//依赖关系展示
public class PersonServiceBean {
   

    private PersonDao personDao;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值