美文网首页
uml笔记-类图

uml笔记-类图

作者: 兴浩 | 来源:发表于2018-07-30 16:42 被阅读10次

1.泛化

泛化是继承关系的一种,子类继承父类的所有行为和属性,子类可以新增新的功能或者重写父类功能。
uml中使用带空心三角箭头的实线标示
【箭头指向】:箭头指向父类

2.实现

实现是接口和类的关系,是指类实现了接口中定义的接口,uml中用带空心三角箭头的虚线
【箭头指向】:箭头指向接口类

3.关联

实体之间的一个结构化关系表明对象是相互连接的。箭头是可选的,它用于指定导航能力。如果没有箭头,暗示是一种双向的导航能力。在Java中,关联(图E) 转换为一个实例作用域的变量,就像图E的“Java”区域所展示的代码那样。可为一个关联附加其他修饰符。多重性(Multiplicity)修饰符暗示 着实例之间的关系。在示范代码中,Employee可以有0个或更多的TimeCard对象。但是,每个TimeCard只从属于单独一个 Employee。

3.1单向关联

//eg.1
//单向关联
class TimeCard{};
class User
{
TimeCard card;
};

3.2双向关联

//eg.2
//双向关联
class A;
class B
{
A pA;
};
class A
{
B pB;
};

3.3 自身关联

//eg.3
//自身关联
class C
{
C pC;
};

4.聚合关系

1.说明:

关联关系的一种,是强的关联关系。聚合是整体和个体的关系。聚合关系也是通过实例变量实现的。例如汽车、发动机、轮胎,一个汽车对象由一个发动机对象,四个轮胎对象组成。

当类之间有整体-部分关系的时候,我们就可以使用组合或者聚合。

2.例图

3.表现

与关联关系一样,聚合关系也是通过实例变量来实现这样关系的。关联关系和聚合关系来语法上是没办法区分的,从语义上才能更好的区分两者的区别。

4.举例

class CPU{};
class Memory{};
class Computer
{
CPU* mpCPU;
Memory* mpMemory;
};

5、组合关系(合成关系)(composition)

1.说明:

合成关系也是关联关系的一种,是比聚合关系更强的关系。合成关系是不能共享的。例如人有四肢、头等。

表示类之间整体和部分的关系,组合关系中部分和整体具有统一的生存期。一旦整体对象不存在,部分对象也将不存在。部分对象与整体对象之间具有共生死的关系。

2.例图

3.表现

4.举例

//同聚合关系,不过说语义不同

class Leg{};
class Arm{};
class Person
{
Leg mLeg;
Arm mArm;
};

6.依赖关系

1.说明:

对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。

与关联关系不同的是,依赖关系是以参数变量的形式传入到依赖类中的,依赖是单向的,要避免双向依赖。一般来说,不应该存在双向依赖。

依赖是一种弱关联,只要一个类用到另一个类,但是和另一个类的关系不是太明显的时候(可以说是“uses”了那个类),就可以把这种关系看成是依赖。

2.例图

3.表现

依赖关系表现在局部变量,方法的参数,以及对静态方法的调用

4.举例

class Car{};

class House{};

class Person
{
void buy(Car car){}
void buy(House pHouse){}
};

参考:
https://www.cnblogs.com/alex-blog/articles/2704214.html
https://www.jianshu.com/p/97c8fb823528
https://www.processon.com/view/link/5b5ec1d8e4b0555b39cb037f
https://www.processon.com/view/link/5b5eb12be4b0edb750f0a025

相关文章

  • [一]UML入门

    类图 二 UML类图讲解 三 UML类图讲解-自上而下 四 UML类图讲解-对比讲解

  • 设计模式

    设计模式笔记 学会读图 UML我要看懂图UML类图 时序图在线绘制在线绘制时序图工具集合 Builder模式 bu...

  • JavaScript面向对象之UML类图

    UML类图 什么是UML类图 UML(Unified Modeling Language)类图,中文意思为“统一建...

  • C++线下测试回顾

    题目地址 有同学说不知道怎么画内存模型图,我这里附几个教程UML类图小结UML类图与类的关系详解类似的教程笔记网上...

  • uml笔记-类图

    1.泛化 泛化是继承关系的一种,子类继承父类的所有行为和属性,子类可以新增新的功能或者重写父类功能。uml中使用带...

  • UML 类图笔记

    在学习面向对象设计时,类关系涉及依赖、关联、聚合、组合和泛化这五种关系,耦合度依次递增。关于耦合度,可以简单地理解...

  • UML类图笔记

    目录 UML的解释: UML即统一建模语言(Unified Modeling Language),它是一种开放的方...

  • 一张图简述UML类图

    一张图简述UML类图 UML建模常用视图中,类图可算是最多的,初学UML的类图绘制,基于starUML工具,现简记...

  • 设计模式补完计划

    目录 1.uml类图2.uml时序图3.设计模式 uml类图 泛化关系(继承):指类继承自类,接口继承自接口的关系...

  • Java自学-接口与继承 UML图

    UML 图 步骤 1 : UML 图 —— 类之间的关系 UML-Unified Module Language统...

网友评论

      本文标题:uml笔记-类图

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