软设之桥接模式

桥接模式的意图是:将抽象部分与它的实现部分分离,使它们都可以独立变化。

比如说汽车是一个抽象的概念,但汽车有不同品牌和型号,这些汽车有不同的驱动方式,比如烧油或者电动。假如用传统的方式,每增加一个品牌或者型号,就得改大量代码。采用桥接模式,可以将汽车品牌和型号分离。先定义一个汽车类,类中包含指向驱动的接口。驱动方式创建一个汽油类和电动类。这样每当创建一个新的信号,只需要指定品牌型号的子类,并连接驱动方式的类。

Abstraction:抽象类定义抽象类的接口。维护一个Implementor的对象

RefinedAbstraction:扩充的抽象类,扩充由Abstraction定义的接口

Implementor:实现类接口,定义实现类的接口,这个接口不一定要与Abstraction的接口完全一致,事实上这两个接口可以完全不同,一般的讲Implementor接口仅仅给出基本操作,而Abstraction接口则会给出很多复杂的操作

Concrelmplementor:具体实现类,实现Implementor定义的接口并且具体实现它。

相关推荐
CheerWWW1 小时前
深入理解计算机系统——位运算、树状数组
笔记·学习·算法·计算机系统
UXbot2 小时前
AI原型设计工具评测:从创意到交互式Demo,5款产品全面解析
前端·ui·设计模式·ai·ai编程·原型模式
中屹指纹浏览器2 小时前
2026浏览器指纹检测技术演进与多账号反检测实战策略
经验分享·笔记
独小乐2 小时前
012.整体框架适配SDRAM|千篇笔记实现嵌入式全栈/裸机篇
c语言·汇编·笔记·单片机·嵌入式硬件·arm·gnu
卡布叻_星星3 小时前
AI大模型之采用DeepSeek-Coder:6.7b + Ollama + Continue离线部署
笔记
wb1893 小时前
NoSQL数据库Redis集群重习
数据库·redis·笔记·云计算·nosql
宵时待雨3 小时前
优选算法专题1:双指针
数据结构·c++·笔记·算法·leetcode
Stella Blog3 小时前
狂神Java基础学习笔记Day01
java·笔记·学习
tq10863 小时前
时间、决断与主体性:从“存在决定自我”到对“存在即本质”的批判
笔记
老虎06274 小时前
LeetCode热题100 刷题笔记(第五天)双指针法 「 三数之和 」
笔记·算法·leetcode