定义
适配器模式Adapter:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
应用
简单的说:需要的东西就在面前,但却不能使用,短时间内又不能改变它,于是我们就想办法适配它。
软件开发中:系统的数据和行为都正确,但接口不符时,使用适配器模式。适配器模式主要应用于希望复用一些现存的类,但是接口又与复用环境需求不一致的情况。
注意:是在双方都不太容易修改的时候,再使用适配器模式适配。前期设计时,如果接口不相同,不应该考虑使用适配器,而是应该考虑通过重构统一接口。
结构图
代码
//客户端代码
public class Main {
public static void main(String[] args) {
Target target=new Adapter();
target.Request();
}
}
//用户所期待的接口
class Target{
public void Request(){
System.out.println("普通请求");
}
}
//Adaptee需要适配的类
class Adaptee{
public void SpecificRequest(){
System.out.println("特殊请求");
}
}
//Adapter 通过在内部包装一个Adaptee对象,把源接口转换成目标接口
class Adapter extends Target{
private Adaptee adaptee=new Adaptee();
@Override
public void Request(){
adaptee.SpecificRequest();
}
}