深入浅出适配器模式

应用场景

  • 旧版本的类转换为新版本接口,以使用新版本逻辑
  • 面向不同接口的各种不同样式的类可以加入同一个列表成为列表项
  • 不同平台、标准之间的互相切换

适配器模式的参与者是源接口和目标接口

可总结为不更改源类和目标类的前提下,将源接口类型转换为目标接口

适配器模式的本质是封装和继承

public interface Source {
    public void srcMethod();
}
 
public interface Target {
    public void tgtMethod();
}
 
public class SourceImpl implements Source {
    public SourceImpl() {
        System.out.println("Now Source Class");
    }
 
    @Override
    public void srcMethod() {
        System.out.println("Now Source Method");
    }
}
 
public class SourceAdapter implements Target {
    Source src;
 
    public SourceAdapter(Source src) {
        this.src = src;
    }
 
    @Override
    public void tgtMethod() {
        src.srcMethod();
    }
}
 
public class Client {
    public static void main(String[] args) {
        Source src = new SourceImpl();
        Target tgt = new SourceAdapter(src);
        tgt.tgtMethod();
    }
}

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

©2018-2024 Howell版权所有 备案号:冀ICP备19000576号