【设计模式 - 1】UML类图

本文介绍了UML中的对象类型,如接口、抽象类和普通类的表示方式,以及各种关系如实现、继承、依赖、关联、聚合和组合的表示方法。强调了在学习设计模式中理解UML的重要性。
摘要由CSDN通过智能技术生成

前言

说到uml大家应该都不陌生,但是真正在工作中能动手画的同学应该不多吧,但是为了学习设计模式,我觉得学习过程中uml应该是很重要的一个东西,借这个机会顺便也巩固一下吧。

对象类型

接口

接口般由两层长方形表示。第一层是 << interface >> 接口名,第二层是抽象方法。

抽象类

抽象类一般由三层长方形表示。第一层是类名,第二层是属性,第三层是方法。其中抽象方法类名用斜体表示。

普通类

普通类一般由三层长方形表示。第一层是类名,第二层是属性,第三层是方法

连线方式

实现

虚线空心三角箭头表示,由实现类指向接口
实现关系

继承

实线空心三角箭头表示,由子类指向父类
继承(泛化)关系

依赖

虚线单线箭头表示,单线箭头指向被依赖对象
依赖关系

关联
单向关联

实线单线箭头表示,由关联者(Customer)指向被关联者(Address);换句话说,A是B的属性,则由B指向A。

双向关联

实线连接。

自关联

实线单线箭头表示,由自己指向自己

聚合

空心菱形实线表示,空心菱形指向被聚合对象

组合

空心菱形实线表示,空心菱形指向被聚合对象

备注

关联关系中关联聚合、组合的区别个人理解是从语义角度区分,聚合和组合是特殊的关联关系。关联表示双方都是同一个等级,例如朋友关系;聚合的话有一个包含的意思,例如一群牛和牛的关系;组合和聚合的区别则是依赖的程度区别,聚合的话被聚合对象可以在宿主对象创建出来之前就被创建好,生命周期不受其限制,例如某个Component里面要聚合一个RabbitTemplate,Rabbittemplate可以在其创建之前被框架先创建出来。而组合则就是需要被宿主管理其生命周期。

关联关系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值