适配器模式

  1. 什么是适配器?

    答:电源适配器,它是用于电流变换(整流)的设备。适配器的存在,就是为了将已存在的东西(接口)转换成适合我们的需要、能被我们所利用。在现实生活中,适配器更多的是作为一个中间层来实现这种转换作用。说的再通俗一点,就好比两个不同国家的人做生意,双方由于语言做生意的规则等不同,需要一个中间人物给协调,此时的中间人就好比是适配器。

  2. 适配器的应用,比如一个接口里面定义了一些方法,一个需要被适配的类有某些特殊的方法,要综合二者当中的方法就必须有一个类来协调,这个类就是适配器类,适配器类继承需要被适配的类同时实现接口,案例如下:


  3. // 已存在的、具有特殊功能、但不符合我们既有的标准接口的类
  4. class Adaptee {
  5. 	public void specificRequest() {
    		System.out.println("被适配类具有 特殊功能...");
    	}
    }

  6. // 目标接口,或称为标准接口
  7. interface Target {	
  8. public void request();
    }// 具体目标类,只提供普通功能
  9. class ConcreteTarget implements Target {	
  10. public void request() {
    		System.out.println("普通类 具有 普通功能...");
    	}
    }
  11.  

  12. // 适配器类,继承了被适配类,同时实现标准接口
  13. class Adapter extends Adaptee implements Target{
  14. 	public void request() {	
    	
  15. 	super.specificRequest();
    	}
    }
  16.  

  17. // 测试类
  18. public class Client {	
  19. public static void main(String[] args) {		// 使用普通功能类
    		Target concreteTarget = new ConcreteTarget();
    		concreteTarget.request();		
    		// 使用特殊功能类,即适配类
    		Target adapter = new Adapter();
    		adapter.request();
    	}
    }
  20.  测试结果:

  21. 普通类 具有 普通功能...
    被适配类具有 特殊功能...