适配器模式
来源:互联网 发布:edge浏览器打不开淘宝 编辑:程序博客网 时间:2024/06/05 00:56
源码:https://github.com/baitxaps/AdapterPattern
适配器模式:Convert the interface of a class into another interface clients expect. Adapter lets
classes work together that couldn't otherwise because of incompatible interfaces(将一个类的接口变换成客户端所期待的另一种接口,从而是原本因接口不匹配而无法在一起工作的两个类能够在一起工作)
三个角色
Target目标角色:该角色定义把其它类转换为何种接口,也就是我们的期望接口
Adaptee源角色:你想把谁转换成目标角色
Adapter适配器角色:适配器模式的核心角色,其它两个角色都是已经存在的角色,而适配器角色是需要新建立的,它的职责非常简单,
把源角色转换成目标角色,怎么转换?通过继承或类关联的方式
优点
适配器模式可以让两个没有任何关系得类在一起运行,只要适配器这个角色能够搞定他就成增加了类的透明性。我们访问的Target目标角色,但是具体的实现都委托给了源角色,而这些对高层次模块时透明的,也是它不需要关心的
提高了类的复用度
灵活性非常好
使用场景
适配器应用的场景只要记住一点就足够了:你有动机修改了一个已经投产中的接口时,适配器模式可能是最适合你的模式
注意事项
适配器模式最好在详细设计不要考虑它,它不是为了解决还处在开发阶段的问题,而是解决正在服役的项目问题
0 0
- 适配器及适配器模式
- 适配器及适配器模式
- 适配器模式(类适配器)
- 适配器模式(默认适配器)
- 适配器模式(对象适配器)
- 适配器模式-类适配器
- 适配器模式-对象适配器
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 自动装箱(autoboxing)与自动拆箱语(auto-unboxing)法糖
- poj3393
- EasyUI 树形菜单网格
- nginx的哈希表结构--ngx_hash_t
- linphone-PayloadType.java文件分析
- 适配器模式
- TCP/IP详解 笔记1
- 155. Min Stack
- 第一章
- Java中的sleep()和wait()的区别
- 和BEM的战斗:10个常见问题及如何避免
- 对于实现一个优先级队列程序的注解
- 块元素、行内元素,替换元素、非替换元素
- Obeject内的方法