适配器模式(Adapter)的定义如下:将一个类的接口转换成客户端希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。
正如在课上讲的,适配器将某个类/接口转换为 client 期望的其他形式,通过增加一个接口,将已存在的子类封装起来,client 面向接口编程,从而隐藏了具体子类
举一个例子:现在有一个双孔插座,但是插头是三孔,故而应该用一个转接器实现转换功能。
public interface three {//三孔插头
public void insert();
}
这里定义了一个三孔插头,有插入的方法,但是很可惜我们的插座是双孔的。所以我们要在这个插座上增加一个适配器。
public class Adapter implements three{//适配器
public void insert() {
new two().insert;
}
}
我们再实现一个双孔插头的类
public class two{//双孔插头
public void insert() {
}
}
这样实际上我们通过适配器达到了三孔插头插入双孔插座的功能。