一、默认适配模式的使用情况:
当一个类B需要使用接口A中的部分方法时,可以定义一个抽象类C将接口A中的方法平庸实现,然后将类B从抽象类C继承,重写类B需要的方法。默认适配模式的结构图如下所示:
二、举例说明:
如下列代码所示,存在一个接口InterfaceA,类ClassB只需要实现接口中的方法methodA,类classD只需要实现接口中的方法methodD。
package com.solid.pattern;
/**
* 默认适配模式(接口)
* @author solid
*/
public interface InterfaceA {
//方法A
public void methodA();
//方法B
public void methodB();
//方法C
public void methodC();
//方法D
public void methodD();
}
package com.solid.pattern;
/**
* 默认适配模式(抽象类)
* @author solid
*
*/
public abstract class AdapterC implements InterfaceA {
//方法A空实现
public void methodA() {}
//方法B空实现
public void methodB() {}
//方法C空实现
public void methodC() {}
//方法D空实现
public void methodD() {}
}
package com.solid.pattern;
/**
* 默认适配模式(实现类)
* @author solid
*/
public class ClassB extends AdapterC {
//重写方法methodA
public void methodA() {
System.out.println("实现接口A中的方法methodA");
}
}
package com.solid.pattern;
/**
* 默认适配模式(实现类)
* @author solid
*/
public class ClassD extends AdapterC {
//重写方法methodD
public void methodD() {
System.out.println("实现接口A中的方法methodD");
}
}