【设计模式】桥接模式-学习记录

概念

桥接模式是一种结构型设计模式,其UML图像一座桥,通过抽象部分与实现部分分离,使它们可以独立变化,从而达到降低系统低耦合的目的。桥接模式只要目的是通过组合建立两个类之间的联系,而不是继承的方式。

基本结构

抽象Abstraction:一般是抽象类,定义抽象部分接口,维护一个队实现的引用

修正抽象RefinedAbstaction :对抽象接口进行扩展,通常对抽象化的不同维度进行变化或定制

实现Implementor:定义实现部分接口,提供具体的实现。这个接口通常是抽象化接口的实现

具体实现ConcreteImplementor:实现实现化接口的具体类。这些类负责实现实现化接口定义的具体操作。

举个例子,遥控器就是抽象接口,它具有开关电视的功能,修正抽象就是遥控器的实例,对遥控器的功能进行实现和扩展,而电视就是实现接口,具体品牌的电视机是具体实现,遥控器中包含一个对电视接口的引用,通过这种方式,遥控器和电视的实现被分离,我们可以创建多个遥控器,每个遥控器控制一个品牌的电视机,它们之间独立操作,不受电视品牌的影响,可以独立变化。

简易实现

相关推荐

  1. 设计模式模式-学习记录

    2024-05-14 08:10:06       28 阅读
  2. 设计模式

    2024-05-14 08:10:06       42 阅读
  3. 设计模式模式

    2024-05-14 08:10:06       53 阅读
  4. 设计模式——模式

    2024-05-14 08:10:06       55 阅读
  5. 设计模式-模式

    2024-05-14 08:10:06       56 阅读
  6. 设计模式-模式

    2024-05-14 08:10:06       57 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-14 08:10:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-14 08:10:06       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-14 08:10:06       82 阅读
  4. Python语言-面向对象

    2024-05-14 08:10:06       91 阅读

热门阅读

  1. 量子计算入门:原理与编程

    2024-05-14 08:10:06       33 阅读
  2. MySQL和MongoDB区别

    2024-05-14 08:10:06       36 阅读
  3. k8s 配置管理

    2024-05-14 08:10:06       52 阅读
  4. Redis 5.0 Stream数据结构深入分析

    2024-05-14 08:10:06       32 阅读
  5. 力扣:93. 复原 IP 地址

    2024-05-14 08:10:06       35 阅读
  6. 数据库和Redis数据不一致的问题

    2024-05-14 08:10:06       33 阅读
  7. Rust 语言不支持 goto 语句

    2024-05-14 08:10:06       35 阅读
  8. ubuntu 24.04 devilspie 报错解决

    2024-05-14 08:10:06       38 阅读
  9. CircleCI的原理及应用详解(二)

    2024-05-14 08:10:06       29 阅读
  10. 10、Go Gin 连接Redis以及Cookie&Session

    2024-05-14 08:10:06       33 阅读
  11. 使用frp通过http访问内网web服务

    2024-05-14 08:10:06       34 阅读
  12. Nginx-01-Nginx 是什么? 能做什么?

    2024-05-14 08:10:06       27 阅读
  13. hdfs中的小知识(hadoop hdfs hive)

    2024-05-14 08:10:06       37 阅读