zoukankan      html  css  js  c++  java
  • 软考笔记第十四天之UML建模

    用例图

    包含关系(include)

    扩展关系(extend)

    泛化关系

    类图和对象图

    1.填类名,方法名,属性名

    2.填多重读

    3.填关系

    多重读:

    1:表示一个集合中的一个对象对应另一个集合中的1个对象

    0..*:表示一个集合中的一个对象对应另一个集合中的0个或多个对象(可以不对应)。

    1..*:表示一个集合中的一个对象对应另一个集合中的一个或多个对象(至少对应一个)。

    *:表示一个集合中的一个对象对应另一个集合中的多个对象。

    关系:

    依赖关系,泛化关系,关联关系(聚合关系,组合关系),实现关系

    一、依赖关系(Dependence):假设A类的变化引起了B类的变化,则说名B类依赖于A类。

    依赖关系有如下三种情况:

    1、A类是B类的一个成员变量;

    2、A类是B类方法当中的一个参数;

    3、A类向B类发送消息,从而影响B类发生变化;

    使用带箭头的虚线表示

     

    二、泛化关系(Generalization):UML对象图和类图的泛化关系A是B和C的父类,B,C具有公共类(父类)A,说明A是B,C的一般化(概括,也称泛化)

    在UML当中,对泛化关系有三个要求:

    1、子类与父类应该完全一致,父类所具有的属性、操作,子类应该都有;

    2、子类中除了与父类一致的信息以外,还包括额外的信息;

    3、可以使用父类的实例的地方,也可以使用子类的实例;

    使用带空心三角形的实线表示

    三、关联关系(Association):类之间的联系,如篮球队员与球队之间的关联(下图所示)。其中,关联两边的"employee"和“employer”标示了两者之间的关系,而数字表示两者的关系的限制,是关联两者之间的多重性。通常有“*”(表示所有,不限),“1”(表示有且仅有一个),“0...”(表示0个或者多个),“0,1”(表示0个或者一个),“n...m”(表示n到m个都可以),“m...*”(表示至少m个)。

    在关联中有一种叫“限定关联”,还有一种谓之自身关联。另外,对象之间的关联就没那么复杂,只是将类的关联实例化而已。

    使用带数字的实线表示

    四、聚合关系(Aggregation):UML对象图和类图的聚合关系表示的是整体和部分的关系,整体与部分可以分开

    如:电话机包括一个话筒

    电脑包括键盘、显示器,一台电脑可以和多个键盘、多个显示器搭配,确定键盘和显示器是可以和主机分开的,主机可以选择其他的键盘、显示器组成电脑;

    使用带空心菱形的实线来表示

    五、组合关系(Composition):UML对象图和类图的组合关系也是整体与部分的关系,但是整体与部分不可以分开

    如:公司和部门,部门是部分,公司是整体,公司A的财务部不可能和公司B的财务部对换,就是说,公司A不能和自己的财务部分开;人与人的心脏

    使用带实心菱形的实线来表示

     

    六、实现关系(Implementation):是用来规定接口和实线接口的类或者构建结构的关系,接口是操作的集合,而这些操作就用于规定类或者构建的一种服务。

    使用带空心三角形的虚线表示

    顺序图(序列图)

    函数的调用,指向哪个对象就是那个对象的函数?

    活动图

    粗实线表示并行的线程数

    带泳道的活动图

    状态图

    通信图

     例:

    问题3:E-E  0...1

    问题4:按任意键->选择歌曲

  • 相关阅读:
    p1373【奶牛的卧室】
    p1248【交错匹配】(DP)
    QBXT模拟赛T3
    NOIP冲刺班的考试总结
    欧拉回路的一些东西
    一道dp题目
    Blocks
    玩具取名
    Y的积木
    游荡的奶牛
  • 原文地址:https://www.cnblogs.com/pushudepu/p/5968127.html
Copyright © 2011-2022 走看看