java 适配器模式

java适配器(Adapter)模式

   适配器模式是把一个接口转换成客户端期待的另外一种接口,从而使本来由于接口不匹配而不能一块儿工做的类可以一块儿工做。java

   适配器模式有两种实现,一种是经过继承实现(即:类适配器模式),另外一种是经过组合实现(即:对象适配器模式)ide

   两种模式的区别:this

         类适配器模式:是经过继承目标类,从而实如今适配器中对目标类方法的调用的spa

         对象适配器模式:是经过将目标类声明为一个适配器的私有变量,从而实如今适配器中对目标类方法的调用的code

类适配器模式以下:

package com.hs.pattern.adapter;

public interface Ps2 {

    public void ps2Input();
    
}

 

package com.hs.pattern.adapter;

public class Usb {

    public void usbInput(){
        System.out.println("this is usb");
    }
}

 

package com.hs.pattern.adapter;

/**
 * 类适配器
 * @author Administrator
 *
 */
public class UsbAdapter1 extends Usb implements Ps2 {

    @Override
    public void ps2Input() {
        usbInput();
    }

}

 

package com.hs.pattern.adapter;

public class Client {

    public static void main(String[] args) {
        Ps2 ps2 = new UsbAdapter1();
        ps2.ps2Input();
    }
}

 

对象适配器模式以下:

package com.hs.pattern.adapter;

/**
 * 对象适配器
 * @author Administrator
 *
 */
public class UsbAdapter2 implements Ps2 {

    private Usb usb;
    
    public UsbAdapter2( Usb usb ){
        this.usb = usb;
    }
    
    @Override
    public void ps2Input() {
        usb.usbInput();
    }

}

 

package com.hs.pattern.adapter;

public class Client {

    public static void main(String[] args) {

        Usb usb = new Usb();
        Ps2 ps2 = new UsbAdapter2(usb);
        ps2.ps2Input();
    }
}
相关文章
相关标签/搜索