java设计模式:适配器模式

定义

适配器模式是指把一个类的接口适配为客户所期望的另一种接口。这样一来,Adapter模式使得原本因为接口不兼容而不能在一起工作的类可以在一起工作,所以事实上Adapter在其中起到一种桥梁的作用。

解决的实际问题

适配器模式是为了解决什么问题?
比如日常生活中的三相插孔适配为二相插孔,中间做这个转换的物件可以称之为适配器,它解决了我们因为插孔不适配而无法使用的问题,诸如此类例子很多,在此不一一列举。

模式中涉及角色

  1. 目标接口(Target):客户所期望的接口
  2. 被适配的类(Adaptee)
  3. 适配器(Adapter):包装Adaptee以完成到Target的转换

实现方式

  1. 类适配
  2. 对象适配

类适配
采用继承的方式:把Adaptee的行为继承过来再加以包装开放为Target的接口
对象适配
适用对象组合方式:将Adaptee对象注入到适配器中再加以包装开放为Target的接口,即使用委派关系来与Adaptee进行关联

适配器优缺点

优点
1. 相对于客户端Adaptee是透明的,客户端只需面向Adapter,适配细节不需要client关心
2. 将client与adaptee实现解耦,adapter来做中间适配,adaptee不需要与client硬融合

缺点
1. 过多使用适配器,或使用不当会导致系统层次划分零乱,反而不利于整体把控与维护
2. Adapter的接口要规划合理,如果随便变更将需要重新适配,而重新适配的过程比较复杂,无疑加重时间上的成本!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值