zoukankan      html  css  js  c++  java
  • UML

    UML即Unified Model Language,是一种建模语言,也是标准建模语言

    工具安装:

      https://sourceforge.net/projects/staruml/files/staruml/5.0

    UML中的图可以分成两大类

      ·结构图:UML结构图表示系统的静态方面,描述系统的主要结构因此而稳定的那部分,静态结构图主要包括

        1.类图:类图描述系统中的类,以及各个类之间的关系

          class Person{   private int id;   private String name;   private int age;}

           public String getName(){    return name;   }      public int getAge(){    return age;   }      public int getId(){     return id;   }}

          

          类之间的关系:

          1、泛化关系(Generalization)

               说明:这种关系就是面向对象语言中的继承关系,逻辑上可以用"is a"表示。

                代码体现:子类继承父类。

                UML符号:一条实线+空心箭头

          2、实现关系(Realization)

               说明:和泛化关系相似,逻辑上也是用"is a"表示。区别在于实现关系继承一个抽象类(abstract、interface),  而泛化关系继承个具体类。 

             代码体现:实现接口或继承某个抽象类。

                  UML符号:一条虚线+空心箭头。

          3、组合关系(Composition):整体和部分是强依赖关系,即使整体不存在了,部分也不存在了

                说明:是整体与部分的关系,但部分不能脱离整体而独立存在。逻辑上能用"has a"表示。

                   代码体现:成员变量。

                   UML符号:一条实线+实心菱形。

          4、聚合关系(Aggregation):整体和部分不是强依赖关系,即使整体不存在了,部分依然存在

                 说明:是整体与部分的关系,部分能脱离整体而独立存在。逻辑上能用"has a"表示。

                    代码体现:成员变量

                    UML符号:一条实线+空心菱形

          5、关联关系(Association

                 说明:是整体与部分的关系。逻辑上能用"has a"表示。

                     代码体现:成员变量。

                     UML符号:双向关联,一条实线或一条实线+两个箭头;单向关联,一条实线+一个箭头。

          6、依赖关系(Dependency)

                 说明:是一种使用关系,即一个类的实现需要另一个类的协助。逻辑上能用"use a"表示。尽量不要使用双向依赖。

                     代码体现:局部变量、方法的参数和静态方法的调用。

                     UML符号:一条虚线+箭头。

        

        2.对象图:对象图与类图类似,它是类图的实例化,显示类的多个实例化,不是实际的类,描述对象间的关系,用来建立系统原型
        3.组件图:组件图用来描述系统的物理结构及相互间的关系,模型化和文档化了一个系统的架构
        4.部署图:
    部署图用来建模系统的物理部署,如计算机和设备,及它们之间的关联关系

      ·行为图:UML中的行为图主要包括:

          1.用例图:用例图描述角色以及角色与用例之间的连接关系。说明使用这个系统的人都有谁,以及这些人使用这个系统能做些什么

               ·用例元素包括;角色(使用者),用例(实现的功能),关系(关联,依赖,泛化,实现)

        

        2.时序图:时序图用来显示参与者执行某项功能时所要经历的时间顺序

         怎么画虚线?先正常的画好实现,然后,在右边调整为return,就是虚线啦

        3.协作图:协作图与时序图类似,也是一种交互图,如果强调时间顺序,就使用时序图,强调上下级关系,就选择协作图。

          

        4状态图:状态图描述类的对象所有可能的状态,以及事件发生时状态的转移条件

          

     

        5活动图:活动图用来描述一个系统中的控制流

         

    额外添加一个图:泳道图

      泳道是将活动中的具体活动按照负责进行该活动的对象进行分区,一条泳道中的所有活动由同一个对象来执行。

      除了以上的对线性流程进行分区以外,使用泳道表示法可以更清晰地表示并发。

  • 相关阅读:
    A component required a bean named xxx that could not be found. Action: Consider defining
    jmeter 配置csv 登陆网站 报错
    动手动脑(文件与流)
    java异常处理总结
    动手动脑(异常处理)
    动手动脑(继承与多态)
    查询对象个数
    动手动脑
    动手动脑
    统计英语文章的单词
  • 原文地址:https://www.cnblogs.com/xp0813/p/12270251.html
Copyright © 2011-2022 走看看