zoukankan      html  css  js  c++  java
  • 类图

    类的组成:名称+属性+操作(方法)

     


    类的名称必须是名词,不需要前缀或后缀,可以多个名称组合,单词首字母大写。正体字表示类可实例化,斜体字说明类为抽象类
    类的属性(Attributes):
    可见性:public、protected、private、Implementation(default)
    属性类型与初始值
    类的操作(Operations):
    可见性:public、protected、private、Implementation
    参数
    返回类型
    抽象类(双击类)——名称斜体


    类图——接口

    接口中包含方法, 但不包含属性. 在 UML 中接口用一个带有名称的圆圈表示, 通过一条三角箭头的虚线连接具体的接口与实现类,箭头指向接口

    有时候接口也使用普通类的符号表示(在这种情况下三角箭头的虚线才能正常显示):



    类之间的关系

    泛化(Generalization)
    在Java中此类关系通过关键字extends明确标识,依赖的特例
    实现(Realization)
    在Java中此类关系通过关键字implements明确标识,依赖的特例
    关联(Association)
    聚合(Aggregation):聚合关系描述的是部分与整体关系的关联,描述了“has a”的关系,汽车整车与发动机、座椅的关系
    组合(Composition):组合关系是一种更强形式的关联,整合控制成员的生命周期,如公司与部门的关系
    依赖(Dependency)
    在java 中. 依赖关系体现为: 局部变量, 方法中的参数, 和对静态方法的调用.


    类之间的关系——泛化

    泛化定义了一般元素和特殊元素之间的分类关系,如果从面向对象程序设计语言的角度来说,类与类之间的泛化关系就是平常所说的类之间的继承关系。如人与男人和女人的关系 。
    使用空心箭头标示泛化,箭头指向基类。


    类之间的关系——实现

    实现是一种类与接口的关系, 表示类是接口所有特征和行为的实现
    实现用带三角箭头的虚线表示,箭头指向接口


    类之间的关系——关联

    关联关系是类与类之间的联结,它使一个类知道另一个类的属性和方法 ,关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。在 Java 中,关联关系是通过使用成员变量来实现的。 如人与身份证
    单向关联

    双向关联

    自关联


    类之间的关系——聚合

    聚合关系是关联关系的一种,是更强的关联关系。
    聚合是整体和部分之间的关系,例如汽车由引擎、轮胎以及其它零件组成。
    聚合关系也是通过成员变量来实现的。但是,关联关系所涉及的两个类处在同一个层次上,而聚合关系中,两个类处于不同的层次上,一个代表整体,一个代表部分。


    类之间的关系——组合

    UML类图关系中合成关系是关联关系的一种,是比聚合关系还要强的关系。
    代表整体的对象负责代表部分对象的生命周期。


    类之间的关联——多重性

    关联关系的多重性,在UML中,多重性可以用下面的格式表示:
    0..1
    0..*(也可以表示为0..n)
    1(1..1的简写)
    1..*(也可以表示为1..n)
    *(即0..n)
    7
    3,6..9
    0(0..0的简写)(表示没有实例参与关联,一般不用)
    可以看到,多重性是用非负整数的一个子集来表示的。

  • 相关阅读:
    最小生成树与Prim算法
    图的存储——链式前向星
    *转载 Tarjan有向图详解
    图的连通性算法-Kosaraju
    最小花费8597
    PDF提取图片(错误纠正)
    字符串删除指定符号(不限位置)
    python迭代有限制,突破限制
    storm资源冲突
    storm单节点问题(转载)
  • 原文地址:https://www.cnblogs.com/loaderman/p/6421709.html
Copyright © 2011-2022 走看看