7、缺省适配模式(Default Adapter)
问:在什么情况下使用该模式?
答:不准备实现一个接口的所有的方法时。
例子: 假设有一个接口,这个接口有5个方法:
/**
* 拥有5个方法的接口
*
*/
public interface A {
void f1();
void f2();
void f3();
void f4();
void f5();
}
你准备写一个ClassB实现这个接口,但是你只对接口中的某个方法 f1() 感兴趣,请给出一个可行的方案?
代码如下:
首先设计一个抽象类实现该接口:
/**
* 声明一个抽象类实现 A 接口
*
*/
public abstract class AdapterC implements A {
public void f1() {
}
public void f2() {
}
public void f3() {
}
public void f4() {
}
public void f5() {
}
}
让ClassB继承自抽象类AdapterC:
public class ClassB extends AdapterC {
public void f1(){
/**......**/
}
}