结构型--适配器模式

适配器模式好比一个中介,使原本没有关系的两个事务联系在一起。

模式的意图

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

模式的适用性

  1. 当客户需要使用的现有类和它的接口不匹配。

  2. 客户想要重用的类与接口不兼容。

模式的参与者

目标(Target):目标是一个接口,该接口是客户想要使用的接口。
被适配者(Adapter):被适配者是一个已经存在的接口或者抽象类,这个接口或者抽象类需要适配器。
适配器(Adapter):一个类,该类实现了目标接口并包含有被适配者的引用。

目标:ThreeElectricOutlet.java

public interface ThreeElectricOutlet {
    public abstract void connectElectricCurrent();
}

被适配者:TwoElectricOutlet.java

public interface TwoElectricOutlet {
    public abstract void connectElectricCurrent();
}

适配器:ThreeElectricAdapter.java

public class ThreeElectricAdapter implements ThreeElectricOutlet{
    TwoElectricOutlet outlet;
    public ThreeElectricAdapter(TwoElectricOutlet outlet) {
        this.outlet = outlet;
    }
    @Override
    public void connectElectricCurrent() {
        outlet.connectElectricCurrent();
    }

}

总结来说:就是在适配器类中把目标接口实现了,并且把被适配者的引用分装在里面。

优点

  1. 目标和被适配者是完全解耦关系。
  2. 适配器模式满足“开-闭原则”。当添加一个实现Apdatee接口的新类时,不必修改Adapter,Adapter就能对这个新类的实例进行适配。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值