定义

将抽象和实现解耦,使得两者可以独立地变化。

4个角色

在抽象模式中有4个不同的角色。

  1. 抽象化角色 Abstracttion
  2. 实现化角色 Implementator
  3. 修正抽象化 RefinedAbstraction
  4. 具体实现化角色 ConcreteImplementator

抽象角色引用实现化角色

代码实现

Abstracttion.java

public abstract class Abstracttion {private Implementator implementator;public Abstracttion(Implementator implementator ){this.implementator = implementator;}public void request(){this.implementator.doSomething();}public Implementator getImp(){return this.implementator;}}

RefinedAbstraction.java

public class RefinedAbstraction extends Abstracttion {public RefinedAbstraction(Implementator implementator) {super(implementator);}@Overridepublic void request() {super.request();super.getImp().doAnything();}
}

Implementator.java

public interface Implementator {//basic methodpublic void doSomething();public void doAnything();
}

ConcreteImplementator1.java

public class ConcreteImplementator1 implements Implementator {@Overridepublic void doSomething() {//实现业务}@Overridepublic void doAnything() {//实现业务}
}

ConcreteImplementator2.java

public class ConcreteImplementator2 implements Implementator{@Overridepublic void doSomething() {//实现业务}@Overridepublic void doAnything() {//实现业务}
}

桥梁模式的优点

  • 抽象和实现分离:

    实现可以不受抽象的约束,不用被绑定在一个固定的抽象层次上面。

  • 优秀的扩展能力:

    想要增加也没有问题

  • 实现细节对客户透明:

    客户不用关心细节实现,它已经由抽象层通过聚合关系完成了封装。

转载于:https://www.cnblogs.com/whthomas/p/4420891.html

简易的设计模式——桥梁模式相关推荐

  1. 说说设计模式~桥梁模式(Bridge)

    在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种"多维度的变化"?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外 ...

  2. Java设计模式—桥梁模式

    (尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_25827845/article/details/52490611冷血之心的博客) 目录 桥梁模式(桥接模式) 定义: ...

  3. 设计模式——桥梁模式

    桥梁模式定义 将抽象和实现解耦,使得二者可以独立变化 所谓耦合,就是两个实体的行为的某种强关联.而将它们的强关联去掉,就是耦合的解脱,或称脱耦.在这里,脱耦是指将抽象化和实现化之间的耦合解脱开,或者说 ...

  4. 23种设计模式-桥梁模式《官渡之战》

    对于许久不用的东西,容易忘记.百度许久,也未能找到自己所要. 从今日起,有些东西就记载下来,不仅方便自己,希望能帮到他人吧! 定义: 结构型模式一种 .设计程序过程中 , 会经常使用到抽象类或者接口来 ...

  5. 设计模式 - 结构型设计模式 - 桥梁模式(Java)

    分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net 理解桥梁模式,其实就是理解代码抽象和解耦. 我们首先 ...

  6. 设计模式 -- 桥梁模式

    前言 月是一轮明镜,晶莹剔透,代表着一张白纸(啥也不懂) 央是一片海洋,海乃百川,代表着一块海绵(吸纳万物) 泽是一柄利剑,千锤百炼,代表着千百锤炼(输入输出) 月央泽,学习的一种过程,从白纸-> ...

  7. java-23种设计模式-桥梁模式

    1 引子 下面是吕振宇大牛的一个例子,个人觉得挺好的,有助于理解Bridge模式的设计目的: 设想要绘制一幅图画,蓝天.白云.绿树.小鸟,如果画面尺寸很大,那么用蜡笔绘制就会遇到点麻烦.毕竟细细的蜡笔 ...

  8. Android中的设计模式-桥梁模式

    "假舆马者,非利足也,而致千里:假舟楫者,非能水也,而绝江河.君子生非异也,善假于物也."--荀子<劝学>. 美国好莱坞电影有<蜘蛛侠>.<蝙蝠侠&g ...

  9. java设计模式-桥梁模式

    桥梁模式 桥梁模式是对象的结构模式.又称为柄体(Handle and Body)模式或接口(Interface)模式.桥梁模式的用意是"将抽象化(Abstraction)与实现化(Imple ...

  10. 简易的设计模式——原型模式

    定义 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象. 代码实现 public class PrototypeClass implements Cloneable {@Overridep ...

最新文章

  1. NSInvocation
  2. python学习手册笔记——22.模块代码编写基础
  3. python使用方法-python-tkinter使用方法——转载(一)
  4. 3G,三足鼎立;花开千朵,各表一枝!!!
  5. 第二章 循环结构程序设计
  6. 华为服务器芯片总在pc,服务器芯片 华为
  7. 【Objective-C】玩转OC:正式开始自学OC
  8. python机器学习之数据集(查看数据,划分训练集、测试集)
  9. 从无线安全到内网渗透[1]
  10. 营养电子秤控制板方案
  11. 用计算机软件绘制思维导图,电脑软件绘制思维导图操作教程分享
  12. 【教程】最新微信视频号视频批量下载保存方法,非常简单的方法
  13. 【Qt/C++异常笔记】间接寻址级别不同
  14. 基于DRGs的医保控费方案
  15. 惠普微型计算机主机拆卸,HP 惠普 Pavilion Wave 台式主机 拆机
  16. 合天网安实验室CTF-解密200-找茬游戏
  17. Windows Terminal配置
  18. 酷骑自行车可以骑啦!!ofo、摩拜没月卡了也不怕!!
  19. swap函数中的交换 【指针】 学习笔记
  20. 主成分回归之后预测_主成分回归解析.ppt

热门文章

  1. [SAP ABAP开发技术总结]以二进制、字符模式下载文件
  2. 最近,前端开发把我恶心着了,为了甩锅,我写了个牛逼的日志切面!
  3. 成都女学霸高考 692 分想当“程序媛”,网友:快劝劝孩子
  4. 你见过哪些操蛋的代码?切勿模仿! 否则后果自负
  5. IntelliJ IDEA 2019.3 首个最新访问版本发布,新特性抢先看
  6. 开源巨献:Google最热门60款开源项目
  7. 再谈如何成为一名优秀CTO
  8. Activity/Fragment最强生命周期总结
  9. 三包围结构的字是什么样的_清桦学书之结构篇——包围结构。
  10. 基于stm32智能车的设计(ucosiii)---北京之行