适配器模式

来源:互联网 发布:创建sql数据库视图 编辑:程序博客网 时间:2024/05/21 06:18

package test;

/**
* 功能:一个方法原本调用A接口的方法输出,当要调用B接口的方法输出,但不改动这个方法
* 解决方法:利用适配器,该适配器实现A接口,并将B的实现类传入适配器。在A接口的实现方法中,调用B实现类的方法
* @author fantasy
*
*/
public class Test5 {

/** * @param args */public static void main(String[] args) {    PowerA pa = new PowerAImpl();    show(pa);    PowerAAdapter adapter = new PowerAAdapter(new PowerBImpl());    show(adapter);}public static void show(PowerA pa){    pa.showA();}

}

interface PowerA{

public void showA();

}
class PowerAImpl implements PowerA{

@Overridepublic void showA() {    System.out.println("showA");}

}

interface PowerB{

public void showB();

}
class PowerBImpl implements PowerB{

@Overridepublic void showB() {    System.out.println("showB");}

}

//适配器
class PowerAAdapter implements PowerA{

private PowerB pb;    public PowerAAdapter(PowerB pb){        this.pb = pb;    }    @Override    public void showA() {        pb.showB();    }

}

0 0
原创粉丝点击