适配器模式
定义:将一个类的接口,转换成客户期望的另一个接口,适配器让原本接口不兼容的类可以合作无间。
类图
示例
//用户的目标接口 public interface Duck { void quack(); } //被适配者 public class Chicken { public void crow(){ System.out.println("公鸡打鸣!"); } } //适配器 public class ChickenAdapter implements Duck{ Chicken chicken; public ChickenAdapter (Chicken chicken){ this.chicken = chicken; } @Override public void quack() { chicken.crow(); } } //客户端 public class Client { //通过鸭子接口让鸡打鸣 public static void main(String[] args){ Duck chickenAdapter = new ChickenAdapter(new Chicken()); chickenAdapter.quack(); } }
运行结果

优点:把两个不相关的类一起运行,提高类的复用。
缺点:调用接口A,获得的是B的实现,过多的使用会造成系统混乱,难以掌控。
使用场景:适用于使用正在运行中的系统的接口,而非在设计初期使用。
语言是思想的载体


浙公网安备 33010602011771号