欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

桥接模式的理解及适用场景

程序员文章站 2022-03-27 21:42:13
定义:将抽象部分与它的实现部分分离,使它们都可以独立地变化。意图:将抽象与实现解耦。桥接模式所涉及的角色1. Abstraction:定义抽象接口,拥有一个Implementor类型的对象引用2. RefinedAbstraction:扩展Abstraction中的接口定义3. Implementor(桥):是具体实现的接口,Implementor和RefinedAbstraction接口并不一定完全一致,实际上这两个接口可以完全不一样Implementor提供具体操作方法,而Abstr...

定义
:将抽象部分与它的实现部分分离,使它们都可以独立地变化。
意图
:将抽象与实现解耦。

桥接模式所涉及的角色
1. Abstraction(调用者)
:定义抽象接口,拥有一个Implementor类型的对象引用

2. RefinedAbstraction(抽象类)
:扩展Abstraction中的接口定义,继承Abstraction

3. Implementor(桥)
:是具体实现的接口,Implementor和RefinedAbstraction接口并不一定完全一致,实际上这两个接口可以完全不一样Implementor提供具体操作方法,而Abstraction提供更高层次的调用

4. ConcreteImplementor(被调用者)
:实现Implementor接口,给出具体实现

注意点:

a、定义一个桥接口,使其与一方绑定,这一方的扩展全部使用实现桥接口的方式。

b、定义一个抽象类,来表示另一方,在这个抽象类内部要引入桥接口,而这一方的扩展全部使用继承该抽象类的方式。
    
Jdk中用到的桥接模式:JDBC

JDBC连接数据库时:利用驱动来桥接

JDBC连接数据库时,在各个数据库之间进行切换,基本不需要动太多的代码,甚至丝毫不动,原因就是JDBC提供了统一接口,每个数据库提供各自的实现,用一个叫做数据库驱动的程序来桥接就行了

想通过实例来理解,可以看一下这位大佬的博文,感觉挺不错的:https://www.cnblogs.com/V1haoge/p/6497919.html

欢迎大家阅读,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。

本文地址:https://blog.csdn.net/qq_41936224/article/details/107487720