适配器模式学习总结

 

意图:将一个类的接口转换成客户希望的另外一个接口。该模式使原本由于接口不兼容而不能一起工作的那些类可用一起工作。

问题: 一个系统拥有正确的数据和行为,但接口确实错误。典型用途:你必须把某些东西实现为我们定义或已经拥有的抽象类的派生类。

解决方案Adapter模式用我们需要的接口对无法修改的类进行包装。

参与者与协作者 AdapterAdaptee的接口进行适配,使它与Target(Adapter派生自它)相匹配。让ClientAdaptee当作Targer的一个类型来使用它。

效果:Adapter模式让现存的对象适应新的类结构,而不受他们的接口限制。

实现:将现存的类包含在另外一个类之中,包容类与需要的接口相匹配,并调用被包容类的方法。

适用范围:                             

(1)       现存类已实现的那些功能可以被适配。

(2)       现存对象没有实现的那些对象可以在适配对象中实现。

适配器Adapter模式的类型(取决于问题领域的不同约束):

        1)对象模式:上述Adapter模式叫做对象模式,因为它依赖于一个对象(适配对象)包含另外一个对象(被适配对象)。

       2)类Adapter模式:实现Adapter模式的另外方式就是使用多重继承。

外观模式与适配器模式的比较:(外观模式简化接口,适配器模式将接口转换成现有的接口。)

项目

外观模式

适配器模式

是否有现存的类

是否我们必须针对某个接口进行设计

一个对象是否需要多态行为

可能

是否需要一个更简单的接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值