• UML类图表现方式


    看懂UML类图是学习设计模式的基础,同时也是工作中必须掌握的一门技能,也是以后自己做设计的工具,下面我根据一些资料介绍一些类图基本表现方式。

    1.类的表示

    实现类图:类名是一般的字体

    抽象类图:类名是斜体显示

    接口图:类名的顶端有<<interface>>修饰 或者 类图头上有一个棒棒糖类似的图表示

    2.方法的表示

    ‘+’表示公共的public

    '-'表示私有的private

    ‘#’表示受保护的protected

    4.类与类之间的关系

    a.继承(泛化)关系:空心三角形+实线表示

    b.实现关系:空心三角形+虚线表示

    c.关联关系(表现在类属性上)【用实线箭头来表示】

    一个类需要知道(了解)另外一个类,有单向关联、多向关联、自关联

    例如:人和天气、企鹅和气候

    d.聚合关系(表现在类属性是数组)【用空心的菱形+实线箭头表示】

    一个类拥有另外一个类,弱拥有,体现是A对象可以包含B对象,但是B对象不是A对象的一部分

    例如:雁群包含大雁

    e.合成关系、组合关系(表现在同时实例化)【用实心的菱形+实线箭头表示】

    部分和整体的生命周期一样

    例如:车子和轮胎、鸟和翅膀、狗和尾巴

    f.依赖关系(表现在局部变量、方法参数、静态方法的调用)【用虚线箭头表示】

     一个类依赖于另外一个类

    例如:人和水、人和氧气

    5.类之间关系的强度

    继承、实现 > 合成(组合)> 聚合 > 关联 > 依赖

    推荐一个很好的设计模式文档:https://design-patterns.readthedocs.io/zh_CN/latest/creational_patterns/simple_factory.html

  • 相关阅读:
    [Project Euler] Problem 58
    [Project Euler] Problem 59 Decrption
    [Project Euler] Problem 57
    VS2010 + WinDDK 搭建驱动开发环境
    利用C++模板特性计算各整数类型的最大最小值
    虚表的那些事儿
    ModuleNotFoundError: No module named 'pip._vendor.six'
    OpenCVPython系列之单应性查找对象理论篇
    OpenCVPython系列之背景分离
    OpenCVPython系列之Shi—tomasi拐角检测器
  • 原文地址:https://www.cnblogs.com/advancing/p/7746539.html
Copyright © 2020-2023  润新知