Java 设计模式(五)适配器模式

一、简介

适配器模式主要用于将两个不适配的接口相结合,使得通过原有接口不用修改原有代码,就能用于新的接口需求(如现在客户提供一组接口来给我们实现,而我们原有的接口可以完成这个工作,但两个接口不匹配,此时可以使用适配器模式)

二、代码示例

要求:
一个插座需要一个三头的插头才能接通电源供电,而我们有一个两头的插头,要求写一个适配器使得两个头的插头可以使用。

插头接口及两头的插头:

//三头插头接口(相当于客户要求的接口,此处不做实现)
interface IThreePlug{
    //三头插头插入功能
    void threePluginsert();
}
//两头插头接口
interface ITwoPlug{
    //两头插头插入功能
    void twoPlugInsert();
}
//两头插头实现类
class TwoPlugImpl implements ITwoPlug{
    public void twoPlugInsert(){
        System.out.println("twoPlug is pluging...");
    }
}

插座:

class Outlet{
    //连接方法需要一个三头插头
    public void connect(IThreePlug plug){
        System.out.println("I need a threePlug");
        plug.threePluginsert();
        System.out.println("connect success");
    }
}

适配器:

class MyAdapter implements IThreePlug{
    //适配器实现三头插头接口,持有两头插头对象
    private ITwoPlug plug;
    MyAdapter(ITwoPlug plug){
        this.plug = plug;
    } 
    //三头插头插入方法实际由两头插头完成
    public void threePluginsert(){
        this.plug.twoPlugInsert();
    }
}

场景模拟:

public class AdapterTest {
    public static void main(String[] args) {
        Outlet outlet = new Outlet();
        outlet.connect(new MyAdapter(new TwoPlugImpl()));
    }
}

结果打印

I need a threePlug
twoPlug is pluging...
connect success

小结:
适配器模式对于相似业务需要不同接口的场景有着很大的帮助,大大提高了代码的复用性。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值