個人理解,適配器模式,就是兩個水管A(Target)和C(Adaptee)接口不匹配不兼容,就拿另外一截管子B(Adapter),一頭接上原本的水管A(繼承),另一頭接上C(調用)。那么,A通過B,和C接上了。
public interface Target {
public void methodA();
}
public class Adaptee {
public void methodB() {
//do something...
}
}
public class Adapter extends Target {
private Adaptee ee;
public Adapter(Adaptee ee) {
this.ee = ee;
}
public void methodA() { //水管C Adapter的接口
ee.methodB(); //實際調用了水管B Adaptee的接口
}
}
Adapter和Proxy的區別:
adapter是適配adaptee和target之間的關系
adaptee和target無關系,realSubject和s
這里有篇文章很不錯,鏈接一下:
http://yichao.blog.edu.cn/user2/yichaozhang/archives/2006/1501606.shtml
又找到網上另一個見解:
proxy 和adapter有一定類似,都是屬于一種銜接性質的。
區別是很明顯的,從大體上說:proxy是一種原來對象的代表,其它需要與這個對象打交道的操作都是和這個代表交涉,就象歌星的經紀人一樣。
adapter目的則不是要虛構出一個代表者,而是為應付特定使用目的,將原來的類進行一些組合。