• UML类图学习


    1. UML类图样例

    2. 基本概念

    2.0 类图说明

     Class类图:分为三层,第一层显示类名称,如果是抽象类则用斜体显示;第二层表示类的特性,通常是字段和属性;第三层是类的方法或者行为, 前面的符号+表示public,-表示private,#表示protected,~表示default

     Interface图:分为两层,第一层有<<interface>>标识,并显示接口名称;第二层表示接口方法

     在面向对象程序设计时,类与类之间的关系主要分为继承,实现,依赖,关联,聚合,组合六种关系

     空心菱形表示 contains of 关系; 实心菱形表示 part of

    2.1 依赖关系

     依赖关系用虚线、箭头表示,例如上图中的Animal依赖 Oxygen和Water,代码层面,依赖关系在Java语言中体现为局域变量、方法的形参,或者对静态方法的调用;

    2.2 关联关系

      关联关系用实线、箭头表示,例如上图中的Penguin和Climate,表示类与类之间的联系,当一个类需要知道另一个类的属性和方法,可以使用关联,这种关系很强,比依赖关系更强,在代码层面和聚合、组合关系一样,只能从语义上区分;

    2.3 组合关系

     组合关系用实心菱形、实线、箭头表示,例如上图中的Bird和Swing是组合关系,代码层面,一个类是另外一个类的一部分(一个属性),强拥有关系,同生共死;常常会使用构造方法来达到组合目的

     比如:翅膀是鸟的一部分,轮胎是汽车的一部分,强调part of关系

    2.4 聚合关系

     聚合关系用空心菱形、实线、箭头表示,例如上图中的SwallowAggregate和Swallow是聚合关系,代码层面,和组合关系一样,一个类是另外一个类的一部分,但是是弱拥有关系,可以通过set方法来实现;

     例如:雁群和大雁,飞机场和飞机;强调 contains of关系

    2.5 泛化关系

     泛化关系也叫继承关系,用空心三角形、实线表示,例如上图中Bird和Swallow、Duck、Penguin,代码层面extend 

    2.6 实现关系

      实现关系用空心三角形、虚线表示,例如上图中Swallow和Fly接口,代码层面implements

  • 相关阅读:
    分布式文件系统技术选型
    .net core 与nginx笔记
    分布式场景
    c printf函数
    c 编程范式
    VS2019 卡顿,甚至卡死
    SQL Server 跨服务器查询
    递归 0到100求和
    moment js 制作倒计时 比较简单
    关于地狱回调的理解
  • 原文地址:https://www.cnblogs.com/ffopen/p/14855163.html
Copyright © 2020-2023  润新知