设计模式——适配器模式(Adapter Pattern)

JokerMing

共 731字,需浏览 2分钟

 ·

2023-05-29 03:44

适配器模式: 将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。简而言之,个人理解适配器模式就是把接口参数不匹配的内容转换为与调用接口一致的参数进行处理。很典型的一个生活例子: 我们使用的数据线接口转换器,还有三孔排查与两孔的转接。92d05164b55bd927cb9bc5c998206cdc.webp92d05164b55bd927cb9bc5c998206cdc.webp进一步详谈 ============
什么时候能够用到适配器模式呢?根据上述的描述,出现以下问题可以使用: 1. 多方数据通过同一接口汇入数据2. 相反,多数据源通过同一接口返回等等...图示(图片来源网络)

cf687f0dc81e8ba14122df6c939f76e5.webp

根据上述信息可以产生如下代码:Banner接口: 

16f994c5e672ebb259527c32e476d1e3.webp

PrintBanner 类: 实现 Banner 接口

823b204d4518ef7d2c0cf0cdc7bdd134.webp

BannerAdapter: 定义一个适配器对象

14508f32df2704865ce45228afb7cc5d.webp

运行类: MainClass

dd030c3479604101476cb16ae03144fc.webp

根据上述代码,本人对于适配器模式的理解是。在MainClass类中输入不同的参数都能够通过适配器(BannerAdapter类)对不同的入参进行统一规范化,传入到PrintBanner的入参类型都是不变。在适配器中,后续的业务调整(例如:新增输入类型)只需要在适配器对象(BannerAdapter类)中新增对应参数处理的适配方法即可,无需修改(PrintBanner类)也不会对其他现有业务产生影响。这样转念一想好像在实际开发过程中,不知不觉用了很多适配器模式的思想。哦,对了。在示例代码中还用到了其他设计模式。你发现了吗??? System.out.println("    over 谢谢!   ");
浏览 22
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报