设计模式之五--适配器模式

目的:解决不兼容问题
好处:双方都不会改变原有方式与代码

开发场景:现有一系列的类,有统一的方法:excute。现在准备引入另一个现成的类,这个类有类似的方法,但名字叫:submit。问题出现了,如果直接用,有诸多不便,比如可读性差,不能统一调用等等。那么现在就有三个方案:
1、把引入类修改一下。改成excute,但是之前引用了这个类的代码,都要跟着修改,代价巨大。
2、把我们的excute改成sumit,也行。但是问题跟第一条类似。
3、做一个适配器,这个适配器具有统一方法:excute,excute内部,调用了submit。显然适配器内部需要持有一个引入类的对象。

形象比喻:动物园管理员喂动物,动物都用统一的碗吃东西,统一的好处显而易见。后来我们引入了一个新动物牛,这个动物不用碗,用槽。这时候,最好的方案不是让牛用碗,也不是让管理员单独给牛用槽,而是做一个转换器,这个转换器的功能,就是把碗里的食物,通过某种方式转换到槽里。这样一来,管理员不用改变投喂方式,牛也不用改变食用方式,皆大欢喜。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值