zoukankan      html  css  js  c++  java
  • UML图表示类之间的关系

    一、泛化(Generanization)

    图:

    泛化简单的说就是继承关系,在java中就是extend。表示一般与特殊的关系。如鸭子是鸟的一种,即有鸭子的特性也有鸟的共性。用带空心的三角箭头的实线指向父类。

    二、接口与实现

    图:

    这种关系其实就是java里面的implements,是类与接口的关系。有两种表示(因为接口有两种表示方法)。

    1.用带空心三角箭头的虚线,箭头指向接口。

    2.或者直线连接圆圈,圆圈表示接口。

    三、依赖(Dependency)

    图:

     在java中用import表示,如这个类有依赖到哪个类。可以是方法参数或者方法里面的代码。用带箭头的虚线指向所要依赖的类。

    是一种使用的关系。即一个类的实现需要另一个类的协助。所以尽量不使用双向的互相依赖。

    四、关联(association)

    图:

    关联是一种拥有关系。他使一个类知道另一个类的属性和方法。在java中体现就是成员变量。如老师和学生,学生和课程。关联可以是双向的,也可以是单向的。单向的用

    带箭头的实线指向被拥有者。双向的箭头去掉,用一条线连接。

    五、聚合(Aggregation)

    图:

    是整体与部分的关系。部分离开整体后仍然可以存在。如轮胎离开车后仍然可以存在。在java中的体现也是成员变量。用一个带空心菱形的实线,指向整体。

    六、组合(Composition)

    图:

    是整体与部分的关系。但是部分离开整体不可以单独存在。如人和手是不可分离的。表现形式也是成员变量。用一个带实心菱形的实线,指向整体。

  • 相关阅读:
    服务限流原理及算法
    Kafka 与 RabbitMQ 如何选择使用哪个?
    分布式事务之最终一致性实现方案
    如何在Ubuntu 14.04中使用systemctl?
    postgresql13 for window 安装及备份还原数据
    手把手教大家在mac上用VMWare虚拟机装Ubuntu
    在Mac平台上使用Multipass安装Ubuntu虚拟机
    如何在markdown中插入js和css
    HTML5标签
    linux
  • 原文地址:https://www.cnblogs.com/chenmz1995/p/12310834.html
Copyright © 2011-2022 走看看