Java设计模式—适配器模式(adapter pattern)

现在的手机很多都取消了3.5mm的耳机接口,只留下了一个type-c接口。但是我现在只有一个3.5mm圆孔接口的耳机,我不得不通过一个转接线使得3.5mm的耳机变成type-c接口。

//Type-C插座期望Type-C插头
class TypeCSocket {
    void connectWith(TypeCPlug plug){
        plug.connectTypeC();
    }
}
//Type-C插头的接口
Interface TypeCPlug {
    void connectTypeC();
}
//已有的3.5mm插头
class ThreeDotFivePlug {
    void connectThreeDotFive() { 
        System.out.println("Success to connect !");
    }
}
//使用类适配器方式进行适配
class Adapter1 extends threeDotFivePlug implements TypeCPlug {
    void connectTypeC() {
        connectThreeDotFive();
    }
}
//使用对象适配器方式进行适配
class Adapter2 implements TypeCPlug {
    ThreeDotFivePlug earphones = new ThreeDotFivePlug();
    void connectTypeC() {
        earphones.connectThreeDotFive();
    }
}
//使用
public class Test {
    public static void main(String[] args) {
        TypeCSocket socket = new TypeCSocket();
        TypeCPlug plug1 = new Adapter1();
        TypeCPlug plug2 = new Adapter2();
        socket.connectWith(plug1); //output: Success to connect !
        socket.connectWith(plug2); //output: Success to connect !
    }
}       
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值