首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

设计模式-适配器模式

定义

将一个类的接口转换成客户期望的另一个接口,适配器让原本接口不兼容的类可以相互合作。这个定义还好,说适配器的功能就是把一个接口转成另一个接口。

适配器模式将现成的对象通过适配变成我们需要的接口。适配器让原本接口不兼容的类可以合作。

适配器模式有类的适配器模式和对象的适配器模式两种不同的形式。

对象适配器模式通过组合对象进行适配。

类适配器通过继承来完成适配。

优点

更好的复用性。系统需要使用现有的类,而此类的接口不符合系统的需要。那么通过适配器模式就可以让这些功能得到更好的复用。

更好的扩展性。在实现适配器功能的时候,可以调用自己开发的功能,从而自然地扩展系统的功能。

示例

在下面的示例中,我们有一个目标接口 Target ,一个源接口 Adaptee 和一个适配器类 Adapter 。适配器类实现了目标接口,并且将请求转发到源接口的特定请求方法。客户端代码创建一个适配器对象,并使用它来调用目标接口的方法。

// 源接口

public class Adaptee {

public void specificRequest() {

System.out.println("Adaptee's specific request");

}

}

public interface Target {

public void request();

}

// 适配器类

public class Adapter implements Target {

private Adaptee adaptee;

public Adapter(Adaptee adaptee) {

this.adaptee = adaptee;

}

public void request() {

adaptee.specificRequest();

}

}

// 客户端代码

public class Client {

public static void main(String[] args) {

Adaptee adaptee = new Adaptee();

Target target = new Adapter(adaptee);

target.request();

}

}

  • 发表于:
  • 原文链接https://page.om.qq.com/page/ObGucDq4Kqv9zTRvZ4gobu8w0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券