设计模式之适配器模式(Adapter)

本文深入探讨了适配器模式的原理与应用,这是一种构造型设计模式,用于解决类接口不兼容的问题,使原本无法协同工作的类能够一起工作。文章通过实例代码展示了适配器模式的两种实现方式:继承和组合,并强调了其在遗留代码复用和类库迁移中的重要价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概念
Adapter模式也叫适配器模式,是构造型模式之一,通过Adapter模式可以改变已有类(或外部类)的接口形式。

在这里插入图片描述
适用于:
是将一个类的接口转换成客户希望的另外一个接口。使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

#include <iostream>
using namespace std;
class Current18v
{
public:
         void use18vCurrent()
         {
                  cout<< "使用18v的交流电" << endl;
         }
protected:
private:
};  
class Current220v
{
public:
         void use220vCurrent()
         {
                  cout<< "使用220v的交流电" << endl;
         }
protected:
private:
};  
class Adapter : public Current18v
{
public:
         Adapter(Current220v*p220v)
         {
                  m_p220v= p220v;
         }
         void use18vCurrent()
         {
                  cout<< "adapter中使用电流" << endl;
                  m_p220v->use220vCurrent();
         }
protected:
private:
         Current220v*m_p220v;
};
void main()
{
         Current220v*p220v = new Current220v;
         Adapter*padapter = new Adapter(p220v);
         padapter->use18vCurrent();
 
         delete p220v;
         delete padapter;
         system("pause");
         return;
}

Adapt 模式其实就是把完成同样的一个功能但是接口不能兼容的类桥接在一起 使之可以在一起工作,这个模式使得复用旧的接口成为可能. 实现: Adapt 模式有两种实现办法,一种是采用继承原有接口类的方法,一种是采用组 合原有接口类的方法

要点
Adapter模式主要应用与“希望服用一些现存的类,但是接口又与复用环境要求不一致的情况”,在遗留代码复用、类库迁移等方面非常有用。

一般而言,推荐使用 :对象适配器采用“对象组合”的方式,更符合松耦合精神

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值