目录


概念

程序模拟

版本一

版本二:礼物各种各样

版本三:类爆炸演示

版本四:桥接模式


在抽象和具体实现类两个维度同时发展,不会产生类爆炸的问题。

概念

程序模拟

版本一

帅哥类

GG要追MM,想要给MM礼物

public class GG {public void chase(MM mm) {Gift g = new Book();give(mm, g);}public void give(MM mm, Gift g) {}}

MM类

public class MM {String name;
}

礼物类

public abstract class Gift {}
public class Book extends Gift {}
public class Flower extends Gift {}

版本二:礼物各种各样

礼物有各种各样的,如果用继承的话,就会产生类的大爆炸!

public abstract class Gift {}
public class Book extends Gift {}
public class Flower extends Gift {}
public class WarmGift extends Gift {}
public class WildGift extends Gift {}

版本三:类爆炸演示

各种类型的礼物层出不穷:

/*** 或者从WarmGift继承* 或者从Flower继承*/
public class WarmFlower extends Flower {
}

版本四:桥接模式

public abstract class Gift {GiftImpl impl;
}
public class GiftImpl {}
public class WarmGift extends Gift {public WarmGift(GiftImpl impl) {this.impl = impl;}
}
public class WildGift extends Gift {public WildGift(GiftImpl impl) {this.impl = impl;}
}
public class Book extends GiftImpl {}
public class Flower extends GiftImpl {}
public class MM {String name;
}

这么来使用:

public class GG {public void chase(MM mm) {Gift g = new WarmGift(new Flower());give(mm, g);}public void give(MM mm, Gift g) {System.out.println(g + "gived!");}}

Briage桥接设计模式相关推荐

  1. Java设计模式(十五):桥接设计模式

    1. 应用场景 假如你正在为一个新的人体工学且友好的电视遥控器编程.你要使用好的OO技能,让所有的遥控器都基于相同的抽象,对此抽象又做出不同的实现-每部不同型号的电视机都有自己的遥控器的实现. 2. ...

  2. java 桥梁模设计,Java设计模式学习篇(九)桥接设计模式

    桥接模式(Bridge Pattern)就是把事物和其具体实现分开,使他们可以各自独立的变化.桥接的用意是:将抽象化与实现化解耦,使得二者可以独立变化,像我们常用的JDBC桥DriverManager ...

  3. 【设计模式--->结构型】叩心自问 :桥接设计模式

    叩心自问1:什么是桥接模式? 典型的桥接问题 代码示例(桥接模式解决手机问题): 桥接模式在JDBC的应用: 桥接模式的注意事项和细节 叩心自问1:什么是桥接模式? sadasd桥接模式(Bridge ...

  4. 桥接设计模式(Bridge)

    Bridge??? Bridge的意思是"桥梁".就像在现实世界中,桥梁的功能是将河流的两侧连接起来一样,Bridge模式的作用也是将两样东西连接起来,它们分别是类的功能层次结构和 ...

  5. 设计模式自学笔记007_Real(命令模式、备忘录模式、桥接模式)

    设计模式自学笔记007_Real(命令模式.备忘录模式.桥接模式) 一.命令模式 在软件设计的过程中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道请求的操作是哪个.我们只需要 ...

  6. java设计模式桥接模式最详细讲解,从设计卷到开发看源码

    为什么要使用设计模式? 说到底还是为了程序拓展和移植性,无法就是那几种设计思想 单一职责原则 , 开闭原则  里氏替换原则 ,依赖倒置原则,接口隔离原则,组合复用原则  迪米特法则这些思想和原则就是为 ...

  7. 浅谈设计模式-桥接模式

    书接上回,本篇讲一下结构型模式-桥接设计模式 桥接设计模式 定义:将抽象部分与它的具体实现部分分离,使他们都可以独立的变化 实现:通过组合的方式建立两个类之间联系,而不是继承 这里得解释什么事抽象部分 ...

  8. 设计模式与软考试题之桥接模式

    2009年上半年软件设计师考试下午试题最后一题考查桥接模式,原题如下: [全国计算机技术与软件专业技术资格(水平)考试 2009年上半年 软件设计师 下午试卷] 注:当年试题五.试题六和试题七三选一, ...

  9. 设计模式之Pimpl模式

    Pimpl(pointer to implementation, 指向实现的指针)是一种常用的,用来对"类的接口与实现"进行解耦的方法.这个技巧可以避免在头文件中暴露私有细节(见下 ...

最新文章

  1. [Hive_add_8] Hive 常用参数配置
  2. Swift2.0语言教程之类的属性
  3. 【移动开发】Android中不用图片资源也能做出好看的界面
  4. Python基本语法_函数_参数的多类型传值
  5. javascript学习1---用dom对象动态控制表格
  6. 算法 | 数据结构与算法(代码版)
  7. 如何在Mac上安装win10正版系统
  8. 使用maxwell实时同步mysql数据到kafka
  9. CV Code|计算机视觉开源周报20200501期
  10. Spark SQL从入门到精通
  11. vue 实时显示当前时间
  12. 深入理解双线性插值算法
  13. 孟云飞 :一代通才 自成家数——赵之谦的艺术人生
  14. 其他干货——文章投稿之图片格式-位图vs.矢量图
  15. ddl是什么意思(ddl是什么意思(网络语ddl是什么梗))
  16. Burg法求解AR(p)模型参数(一)自回归模型
  17. 二元函数可微与偏导数_二元函数的连续、偏导数、可微之间的关系
  18. 决策树(Decision Tree)总结
  19. 2019 vs 安装odt_2019年12月14日罗马协会直播预告
  20. 计算机机考试卷分析,在线考试系统 ——试卷分析

热门文章

  1. 【Python基础】超级详解系列-Python列表全面解析
  2. 【NLP】几个NLP实用工具:不用重新造轮子
  3. 【经验分享】来到新公司,我所遇到的三重障碍
  4. 超越Swin,Transformer屠榜三大视觉任务!微软推出新作:Focal Self-Attention
  5. ECCV 2018 | OR-CNN行人检测:为‘遮挡’而生
  6. 8问8答,一篇文章读懂空间音效
  7. javascript一些基础用法
  8. [译] 关于Angular的变更检测(Change Detection)你需要知道这些
  9. python文件处理练习
  10. android studio 中 .9.png的制作