23种设计模式之-适配器模式

适配器模式 Adapter Pattern


适配器模式又叫变压器模式,它的功能是将一个类的接口变成客户端所期望的另一种接口,从而使原本因接口不匹配而导致无法在一起工作的两个类能够在一起工作。

  • 1.已存在的类,它的方法和需求不匹配(方法结果相同或者相似)的情况。
  • 2.适配器模式不是软件设计阶段考虑的设计模式,是随着软件的维护,由于产品的不同,不同需求造成类似功能而接口不同情况下的解决方案。

优点

  • 1.可以提高类的透明性和复用,现在的类的复用但不需要改变
  • 2.目标类和适配类解耦,提高程序的扩展性
  • 3.在很多场景下符合开闭原则

1.类适配器

在这里插入图片描述

public interface Target {

    public int request();
}
public class Adaptee {

    public int specificRequest()
    {
        return 220;
    }
}
public class Apapter extends Adaptee implements Target {

    @Override
    public int request() {
        return super.specificRequest() / 10;
    }
}
public class AdapterTest {

    public static void main(String[] args) {
        Apapter apapter = new Apapter();
        int  specificRequest = apapter.specificRequest();
        int request = apapter.request();

        System.out.println(specificRequest);
        System.out.println(request);
    }
}

2.对象适配器

在这里插入图片描述

public interface Target {

    public int request();
}
public class Adaptee {

    public int specificRequest()
    {
        return 220;
    }
}
public class Apapter implements Target {

    private Adaptee adaptee;
    public Apapter(Adaptee adaptee)
    {
        this.adaptee = adaptee;
    }

    @Override
    public int request() {
        return adaptee.specificRequest() / 10;
    }
}
public class AdapterTest {

    public static void main(String[] args) {
        Target target = new Apapter(new Adaptee());
        target.request();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值