UML类图

UML类图

​ 现在开始学习一些设计模式了,首先需要看懂类图以及自己学会画类图。

基本属性

​ 基于下图这个基本类图进行说明:

image-20240309213449160
image-20240309213449160
  • 最上面的 Student表示类名,如果为斜体则表示抽象类,下面的是类中的属性或者方法
  • 属性的格式为 权限 属性名类型,方法的格式为 权限 方法名返回值类型(非必要)
  • +表示public, -表示private, #表示protected, ~表示default

类的关系

​ 讲完类之间的属性之后,我们需要考虑类之间的关系怎么表示,在类图中一般采用不同的箭头来表示不同的关系。

类之间的关系
类之间的关系

在这些关系中的强弱顺序可以表示为:泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

继承/泛化关系image-20240309225636994

​ 该箭头表示类之间是一种父子关系。子类指向父类,子类继承父类所有属性和行为(方法),子类可以重写父类的方法,子类可以新增其他方法。类似Java中的继承关系,这里就不举例了。

接口/实现关系image-20240309230559203

​ 该箭头表示类之间是一种实现关系,也就是类实现接口。类指向接口,表示实现了该接口的属性和方法。类似于Java中的接口实现关系。

直接关联关系image-20240310123318765

​ 该箭头表示类之间关联关系,存在一对多,多对一,多对多的关系。即,某两个类之间的特定实例存在关联。比如一个订单对应一个客户,一个公司对应多个员工。

依赖关系image-20240310134526581

​ 该箭头表示类之间的依赖关系。比如A类的变化引起了B类的变化,那么就说B类依赖A类。通常体现在某个类的方法需要另一个类的对象作为参数。

聚合关系image-20240310135503646

​ 表示整体和部分的关系,属于关联关系的一种。但是部分可以离开整体存在,属于强关联关系。

组合/合成关系image-20240310135848072

​ 是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值