适配器模式
1.适配器
1.1定义被适配的对象
1.2需执行的功能
2.被适配的对象
1.1需执行的功能
3.客户端需要执行功能,但不能直接调用被适配对象。从而需要一个转换器(适配器)
3.1客户端通过调用适配器从而调用执行功能。
package adapterPatterns;
/**
* 被适配的类
* (相当于例子中的,ps/2键盘)
* @author Lenovo
*
*/
public class Adpatee {
public void request(){
System.out.println("可以完成客户请求需要的功能");
}
}
package adapterPatterns;
/*
* 适配器
* (相当于usb和ps/2的转换器)
*/
public class Adpater implements Target {
//使它们关联起来有两种方式:1.继承 2.属性方法
private Adpatee adapatee ; //对象适配器
@Override
public void handKey() {
adapatee.request();
}
public Adpater(Adpatee adapatee) {
this.adapatee = adapatee;
}
}
package adapterPatterns;
/**
* 客户端
* (相当于例子中的笔记本,只有usb接口)
* @author Lenovo
*
*/
public class Client { //适配器模式
//需要调用target
public void get(Target t1){
t1.handKey();
}
public static void main(String[] args) {
Client c = new Client();
Adpatee a = new Adpatee(); //被适配器
Adpater t = new Adpater(a); //适配器
c.get(t);
}
}
package adapterPatterns;
public interface Target {
public void handKey();
}