仔细看
根据下面的图片和代码进行的自我总结:
适配器模式:就好像是一个两项的插头要去插三项的插座,这是不能直接插进去的,我们只能将中间放一个适配器,这样将两项的插头插到适配器中,在用适配器和三项插头相连接,就会将原来不能连接的内容进行连接,主要的实现就是适配器继承三项的插座,实现两项的这个标准的插头接口,而在实现两项的标准接口中的抽象方法时,用super点来调用继承的这个三项插座这个父类中的方法,从而将他们进行连接
- // 已存在的、具有特殊功能、但不符合我们既有的标准接口的类
- class Adaptee {
- public void specificRequest() {
- System.out.println("被适配类具有 特殊功能...");
- }
- }
- // 目标接口,或称为标准接口
- interface Target {
- public void request();
- }
- // 具体目标类,只提供普通功能
- class ConcreteTarget implements Target {
- public void request() {
- System.out.println("普通类 具有 普通功能...");
- }
- }
- // 适配器类,继承了被适配类,同时实现标准接口
- class Adapter extends Adaptee implements Target{
- public void request() {
- super.specificRequest();
- }
- }
- // 测试类public class Client {
- public static void main(String[] args) {
- // 使用普通功能类
- Target concreteTarget = new ConcreteTarget();
- concreteTarget.request();
- // 使用特殊功能类,即适配类
- Target adapter = new Adapter();
- adapter.request();
- }
- }