【23种设计模式之】10.桥接模式——示例整合,及JDBC的桥接模式

本文深入讲解了桥接模式的设计理念及应用案例,如人与交通工具的关系,并探讨了该模式如何帮助减少子类数量,简化代码结构。同时,还介绍了桥接模式在JDBC中的实际运用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

练习源码:https://github.com/liaoooyx/Design-Patterns

例子1:设计模式读书笔记-----桥接模式 ——形状与颜色
在这里插入图片描述


例子2:桥接模式(Bridge Pattern)——手机与软件
在这里插入图片描述


例子3:桥连接模式—— 人与行为。
在这里插入图片描述
扩展描述:

人是个抽象类,分男人和女人;

当人想用交通工具的时候,就让人持有一个接口类:交通工具。交通工具又有它自己的实现类:自行车、汽车、火车、飞机。人想坐哪种交通工具的时候,通过接口“交通工具”去实现即可。

如果想增加一个功能,比如人要买房子,那再让人持有一个接口类:房子。房子又有它自己的实现类:宿舍、住宅、别墅,四合院等。人想住买哪种,让人通过持有的接口类去调用具体的实现即可。

如果有一人,存丰第三种人,太监,那么让太监去继承人这个抽象类,那么太监就可以很容易的可以坐车、买房子。而代码更改的却很少。


桥接模式的应用:
JDBC和桥接模式:jdbc桥连接过程解析
在这里插入图片描述
基于JDBC的应用程序:Mybatis、Hibernate等

驱动实现:
MySQL:com.mysql.jdbc.Driver
SQL server:com.microsoft.jdbc.sqlserver.SQLServerDriver
Oracle:oracle.jdbc.driver.OracleDriver


桥接模式结构:
(转自:https://blog.youkuaiyun.com/paincupid/article/details/43538887)
在这里插入图片描述
抽象类持有接口类的引用。

如果是2个维度的话,抽象类就持有一个接口类的引用,如果是多个维度的话,就持有多个接口类的引用。桥连接模式利于扩展,减少子类的个数。当多个维度变化的时候,使代码保持简洁。

举例:人是个抽象类,分男人和女人;当人想用交通工具的时候,就让人持有一个接口类:交通工具。交通工具又有它自己的实现类:自行车、汽车、火车、飞机。人想坐哪种交通工具的时候,通过接口“交通工具”去实现即可。如果想增加一个功能,比如人要买房子,那再让人持有一个接口类:房子。房子又有它自己的实现类:宿舍、住宅、别墅,四合院等。人想住买哪种,让人通过持有的接口类去调用具体的实现即可。如果有一人,存丰第三种人,太监,那么让太监去继承人这个抽象类,那么太监就可以很容易的可以坐车、买房子。而代码更改的却很少。

抽象的说:桥接模式的做法是把变化部分抽象出来,使变化部分与主类分离开来,从而将多个维度的变化彻底分离。最后,提供一个管理类来组合不同维度上的变化,通过这种组合来满足业务的需要


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值