Spring5-核心原理-学习 适配器模式
2020-04-20 15:05
190 查看
内容都是从Tom老师的书中摘抄,记录下来方便自己学习。
适配器模式(Adapter Pattern)是指将一个类的接口转换成用户期望的另一个接口,使原本接口不兼容的类可以一起工作,属于结构性设计模式。适用场景:
- 已经存在的类的方法和需求不匹配(方法结果相同或相似)的情况;
- 适配器模式不是软件初始阶段考虑的设计模式,是随着软件的发展,由于不同产品、不同厂家造成功能类似而接口不同的问题的解决方案,优点亡羊补牢的感觉。
public class AC220 { public int outputAC220V(){ int output=220; System.out.println("输出交流电"+output+"V"); return output; } } public interface DC5 { int outputDC5(); } public class PowerAdapter implements DC5 { private AC220 ac220; public PowerAdapter(AC220 ac220) { this.ac220 = ac220; } @Override public int outputDC5() { int adapterInput=ac220.outputAC220V(); int adapterOutput=adapterInput/44; System.out.println("使用poweradapter输入AC:"+adapterInput+"V"+"输出DC:"+adapterOutput+"V"); return adapterOutput; } } public class ObjectAdapterTest { public static void main(String[] args) { DC5 dc5=new PowerAdapter(new AC220()); dc5.outputDC5(); } }
适配器模式的优点:
-
能提高类的透明性和复用性,现有的类会被服用但不需要改变;
-
目标类和适配器类解耦,可以提高程序的扩展性;
-
在恩多业务场景中符合开闭原则。
适配器模式的缺点: -
在适配器代码编写过程中需要进行全面考虑,可能会增加系统的复杂性;
-
增加了代码的阅读难度,降低了代码的可读性,过多使用适配器会使系统的代码变得凌乱。
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- Spring5-核心原理-学习 各种设计模式之间的比对
- Spring5-核心原理-学习 装饰者模式
- 硬件体系优化及IO优化核心优化原理(学习老男孩视频23期)体会
- 逆向工程核心原理学习笔记(二十二):栈帧9:调用printf()函数
- 逆向工程核心原理学习笔记(三):检索API方法
- 逆向工程核心原理学习笔记(六):实战开辟新内存区域写入缓冲区跳转修改字符串
- 逆向工程核心原理学习笔记(三):检索API方法
- 逆向工程核心原理学习笔记(二十四):abex'crackme #2 初探
- 逆向工程核心原理学习笔记(二十五):abex'crackme #2初步破解
- Spring Security原理学习--核心过滤器Filter(二)
- 逆向工程核心原理学习笔记(十六):栈帧3:add()函数参数传递与调用
- 学习笔记6:《大型网站技术架构 核心原理与案例分析》之 万无一失:网站的高可用架构
- 逆向工程核心原理学习笔记(四):检索API方法2-设置断点
- 学习笔记1:《大型网站技术架构 核心原理与案例分析》之 大型网站软件系统的特点
- Spring Security原理学习--核心过滤器Filter
- (精)Spring IOC核心源码学习III:bean标签和自定义标签实现原理
- 逆向工程核心原理学习笔记(五):实战“打补丁方法”修改字符串
- 逆向工程核心原理学习笔记(十二):分析abex' crackme #1
- 逆向工程核心原理学习笔记(二十):栈帧7:删除函数add()的栈帧&函数返回
- 逆向工程核心原理学习笔记(六):实战开辟新内存区域写入缓冲区跳转修改字符串