使得原来由于接口不兼容而不能一起工作的那些类可以一起工作。
如果碰到两个没有关系的类组合在一起使用的问题,就应使用Adapter,
interface Target
{
void method1();//这是Adaptee有的方法
void method2();//这是Adaptee没有的方法
}
class Adaptee
{
public void method1(){}
}
public class Adapter implements Target
{
private Adaptee adaptee;
public Adapter(Adaptee adaptee){
this.adaptee = adaptee;
}
//直接调用Adaptee的方法,没有必要重新写method1()的代码,这就是好处
public void method1(){
adaptee.method1();
}
public void method2(){
//再此加入补充的方法的实现代码
}
}
通过Adapter,我们就可以使用Adaptee的接口,同时又可以扩展新的接口。
博客给出了interface、class的代码示例,定义了Target接口、Adaptee类和Adapter类。通过Adapter类实现Target接口,可直接调用Adaptee的方法,还能补充新方法的实现代码,从而使用Adaptee的接口并扩展新接口。
315

被折叠的 条评论
为什么被折叠?



