文章目录
适配器模式
emmmmmmm,感觉这个模式好像不是重点,也没布置啥作业,估计会出选择或者简答题。
但还是得仔细总结一下:
将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作那些类可以一起工作。
系统的数据和行为都正确,但是接口不符合时,我们应该考虑用适配器,目的是使控制范围之外的一个原有对象与某个接口匹配。适配器模式主要应用于希望复用一些现存的类,但是接口又与复用环境要求不一致的情况。
类的适配器模式(继承完成适配)
对象的适配器模式(包含),本节主要就是对象适配器,采用对象组合的方式,更符合松耦合。
本质:转换匹配,复用功能
优点:更好的复用性,更好的扩展性
缺点:过多使用适配器模式,会让系统凌乱,不容易整体进行把握
场景:遗留代码复用,类库迁移
package 适配器模式;
public interface Target {
public void request();
}
package 适配器模式;
public class Adapter implements Target {
public Adaptee adaptee = new Adaptee();
@Override
public void request() {
adaptee.specificRequest();
}
}
package 适配器模式;
public class Adaptee {
public void specificRequest() {
System.out.println("这是特殊请求");
}
}
package 适配器模式;
public class Client {
public static void main(String[] args) {
Target target = new Adapter();
target.request();
}
}