适配器模式总结
来源:互联网 发布:ubuntu 设置开机脚本 编辑:程序博客网 时间:2024/05/16 14:04
适配器模式核心思想:将A接口的对象转化成B接口的对象,使之从外观上看似是B对象,但是确实A对象在执行实际的业务逻辑。
看到适配器模式的第一感觉就是:这也算个模式?就应该这样处理啊!!!生活中有很多鲜活的例子,如网络适配器(网卡),调制解调器,数据线,充电器等等。其缺点就是,需要有这么一个额外的东西才能进行转换。
适配器模式的好处:实现了良好的可扩展性和类复用性。
下面给出一个简单的实例,将PS/2的键盘转接成USB接口。
package adapterpattern;/** * PS键盘接口 */public interface PS2 {String A();String B();String C();}
package adapterpattern;/** * USB键盘接口 */public interface USB {String A();String B();String C();}
package adapterpattern;/** * PS2键盘 */public class PS2Keyboard implements PS2{@Overridepublic String A() {return "PS@A";}@Overridepublic String B() {return "PS@B";}@Overridepublic String C() {return "PS@C";}}
package adapterpattern;/** * PS2转USB转换器 */public class Adapter implements USB{private PS2Keyboard keyboard;public Adapter(PS2Keyboard keyboard){this.keyboard = keyboard;}@Overridepublic String A() {return keyboard.A();}@Overridepublic String B() {return keyboard.B();}@Overridepublic String C() {return keyboard.C();}}
package adapterpattern;public class Test {public static void main(String[] args) {USB usbKeyboard = new Adapter(new PS2Keyboard());System.out.println(usbKeyboard.A());System.out.println(usbKeyboard.B());System.out.println(usbKeyboard.C());}}
测试结果
PS@APS@BPS@C
0 0
- 适配器模式总结
- Spinner与适配器模式总结
- 【阶段总结】适配器模式&外观模式
- 常用设计模式总结--适配器模式
- 设计模式总结之适配器模式
- java设计模式总结六:适配器模式
- 大话设计模式-适配器模式学习总结
- 适配器模式-Adapter Pattern 不兼容结构的协调——适配器模式(四):缺省适配器,适配器模式总结
- 不兼容结构的协调——适配器模式(四):缺省适配器,适配器模式总结
- PHP 适配器模式清晰明了的总结
- 适配器及适配器模式
- 适配器及适配器模式
- 适配器模式(类适配器)
- 适配器模式(默认适配器)
- 适配器模式(对象适配器)
- 适配器模式-类适配器
- 适配器模式-对象适配器
- 设计模式总结之Adapter Pattern(适配器模式)
- java RMI入门指南
- XOR运算符
- 位图管理、图片下载缓存、管理图片内存 (五) 管理位图内存
- 教你如何迅速秒杀掉:99%的海量数据处理面试题
- WPF绘制统计图
- 适配器模式总结
- 成功创业前盛天下棋牌的四大预备
- 02分支结构
- 20140417-RBM(受限的玻尔兹曼机)
- 【环境配置】配置maven
- Why would an app crash with _objc_msgSend_uncached
- 北风网“双十一”史上最低价,一律全场五折
- Troubleshooting 'enq: TX - index contention' Waits in a RAC Environment. (文档 ID 873243.1)
- Lucene表达式