admin管理员组文章数量:1794759
适配器
适配器模式:
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。
生活中的场景
模式中的角色
– 目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
– 需要适配的类(Adaptee):需要适配的类或适配者类。
– 适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。
工作中的场景
– java.io.InputStreamReader(InputStream)
– java.io.OutputStreamWriter(OutputStream)
public interface Target {void handleReq();
}
/*** 被适配的类* (相当于例子中的,PS/2键盘)*/
public class Adaptee {public void request(){System.out.println("可以完成客户请求的需要的功能!");}
}
/*** 适配器 (类适配器方式)* (相当于usb和ps/2的转接器)* @author Administrator**/
public class Adapter extends Adaptee implements Target {@Overridepublic void handleReq() {super.request();}
}
/*** 适配器 (对象适配器方式,使用了组合的方式跟被适配对象整合)* (相当于usb和ps/2的转接器)*/
public class Adapter2 implements Target {private Adaptee adaptee;@Overridepublic void handleReq() {adaptee.request();}public Adapter2(Adaptee adaptee) {super();this.adaptee = adaptee;}
}
/*** 客户端类* (相当于例子中的笔记本,只有USB接口)*/
public class Client {public void test1(Target t){t.handleReq();}public static void main(String[] args) {Client c = new Client();Adaptee a = new Adaptee();// Target t = new Adapter();Target t = new Adapter2(a);c.test1(t);}
}
本文标签: 适配器
版权声明:本文标题:适配器 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1693251705a251987.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论