适配器模式

介绍:
是将两个不兼容的类融合在一起,有点像粘合剂,将不同的东西通过一种转换使得他们能够协作起来。
定义:
把一个类的接口变成客户端所期待的另一种接口,从而使原本因借口不匹配而无法在一起工作的两个类能过在一起工作。
使用场景:
1、系统需要使用现有的类,而此类的借口不符合系统的兼容,接口不兼容;
2、想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作;
3、需要一个统一的输出接口,而输入端的类型不可预知。
UML类图:
这里写图片描述
这里写图片描述
代码:
类适配器模式
FiveVolt.java

public interface FiveVolt {

    public int getVolt5();
}

VoltAdapter.java

public class VoltAdapter extends Volt220 implements FiveVolt{

    @Override
    public int getVolt5(){
        return 5;
    }
}

Volt220.java

public class Volt220 {

    public int getVolt220(){
        return 220;
    }
}

Client.java

public class Client {

    public static void main(String[] args){
        VoltAdapter adapter=new VoltAdapter();
        System.out.println("输出电压:"+adapter.getVolt5());
    }
}

对象适配器模式
VoltAdapter.java

public class VoltAdapter extends Volt220 implements FiveVolt{

    Volt220 mVolt220;

    public VoltAdapter(Volt220 adaptee){
        mVolt220=adaptee;
    }

    public int getVolt220(){
        return mVolt220.getVolt220();
    }

    @Override
    public int getVolt5(){
        return 5;
    }
}

运行结果:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值