缺省适配模式为一个接口提供缺省实现,这样子类可以从这个缺省实现进行扩展,而不必从原有的接口进行扩展。
为什么
在很多情况下,让一个子类实现某一个接口,但是这个类又用不到接口所规定的所有方法。通常处理办法是,这个具体的类实现所有的方法,那些没有用的方法有空的实现。但这是一种浪费,也可能造成混乱。因为调用方法的人不一定知道哪些方法是不是空的。
什么情况下使用
任何情况下,不准备实现一个接口所有的方法时,就可以制作一个抽象类,给出方法的具体实现。这时候,新的类就是Adapter类,给出平庸实现的抽象类就当做Adaptee类。