设计模式-UML类图基础概念

UML类图基本概念

概念

  • UML- - -Unified modeling language UML(统一 建模语言)
  • 是一种用于软件系统,分析和设计的语言工具
  • UML本身是一套符号的规定,用于描述软件模型中的各个元素之间的关系
  • 比如接口实现泛化依赖组合聚合

1. 依赖关系(Dependence)

【概念】

只要在类中用到了对方,那么他们之间就存在依赖关系

依赖关系


【特点】

  1. 类中使用了对方
  2. 对方是类的成员变量
  3. 对方是方法的返回类型
  4. 对方是方法的接受参数
  5. 对方在方法中被使用到

1.1 泛化关系(generalization)

【概念】

泛化关系就是继承关系,是一种特殊的依赖关系

泛化关系


【特点】

  1. 泛化就是继承
  2. 只要类A继承了B类,就说明A和B之间存在泛化关系

1.2 实现关系(Implementation)

【概念】

实现关系实际上就是A类实现B类,是依赖关系的特例


实现关系

2. 关联关系(Association)

【概念】

类与类之间的联系,他是依赖关系的特例

关联关系具有 导航性 :即具有双向关系单向关系

关联关系

单向关系:Person类中IDCard类 IDCard类中没有Person类

双向关系:Person类中IDCard类 IDCard类中也有Person类

2.1 聚合关系(Aggregation)

【概念】

  • 表示整体和部分的关系
  • *** 整体与部分可以分开**
  • 聚合关系是关联关系的特例
  • 具有导航性和多重性

【示例】

//如果我们主观意识上认为  鼠标和显示器与计算机是可拆分的  就可以使用聚合方式
class Computer{
   //作为成员变量
   private Mouse mouse;
   private Monitor monitor;

   //通过set方法传入成员变量 --> 可拆分为聚合
   public void setMonitor(Monitor monitor) {
       this.monitor = monitor;
   }

   public void setMouse(Mouse mouse) {
       this.mouse = mouse;
   }
}

//鼠标
class Mouse{
   String name;
}
//显示器
class Monitor{
   String name;
}

聚合关系

2.2 组合关系(Composition)

【概念】

  • 整体和部分的关系
  • 但是整体与部分不可以分开

【示例】

//如果我们主观意识上认为  鼠标和显示器与计算机是不可拆分的  就可以使用组合方式
class Computer{
   //作为成员变量的同时  自己跟随Computer类进行创建销毁  
   private final Mouse mouse = new Mouse();
   private final Monitor monitor = new Monitor();
}

//鼠标
class Mouse{
   String name;
}
//显示器
class Monitor{
   String name;
}

组合关系


组合&聚合关系:
组合&聚合关系

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值