美文网首页程序员今日看点
分分钟看懂UML--类图

分分钟看懂UML--类图

作者: 我是吸血鬼 | 来源:发表于2016-07-17 16:21 被阅读464次

    一、什么是UML?

    UML中文名为统一建模语言(Unified Modeling Language)。UML是一种开发的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的开放方法。

    二、UML中类之间的关系####

    以下用实际的例子说明一下UML中类之间的关系:

    1. 实现关系
      在UML图中以空心三角+虚线来表示:
    实现关系

    在面向对象的编程中,一般会定义基类和继承类。基类不能实现方法,可以理解为傀儡类,“傀儡类”有基础的属性。实际工作的是实现类,即子类。在Java中可以使用abstract 定义“傀儡类”或者使用interface 接口。
    Person是一个抽象类,人可以是学生、科学家、记者等等。学生与Person之间的关系便是实现关系。

    1. 泛化关系
      以空心三角+实线表示:


      泛化关系

      学生是一个可以是小学生、初中生、大学生等。学生是一个泛化的类,那么小学生与学生之间的关系便是泛化关系。

    2. 组合关系
      以实心菱形+实线表示:


      组合关系

      一个企业由多个部门,企业与部门有着强关系,如果企业倒闭了,那么部门随之也就没有了。组合关系可以理解为具有强依赖的聚合关系。

    3. 聚合关系
      以空心菱形+实线表示:


      聚合关系

      聚合关系不是强依赖关系,比如一个企业的部门没有了,但是企业的职员还是职员,并不会因为部门的撤销而改变身份。

    4. 依赖关系
      以虚线+箭头表示:


      依赖关系

      依赖关系通常在运行时产生,并且是临时性关系。比如构造函数中的参数。

    5. 关联关系
      以实线+箭头表示:
    关联关系

    关联关系为静态关系,与运行时无关。一般是常识性的强关系。学生与身份证之间便是关联关系。

    相关文章

      网友评论

        本文标题:分分钟看懂UML--类图

        本文链接:https://www.haomeiwen.com/subject/getpjttx.html