views:

89

answers:

1

I have an interface declaring 4 methods ... I added an abstract class implementing this interface to give developers the opportunity to choose how many methods they want to implement (specially useful in case of a listener) ...

public interface Mylistener {
    void actionA();
    void actionB();
    void actionC();
    void actionD();
}
public abstract class MylistenerWrapper implements Mylistener {
    public void actionA(){}
    public void actionB(){}
    public void actionC(){}
    public void actionD(){}
}

and now developers are not obliged to implement all the interface methods :

Mylistener l1 = new MylistenerWrapper(){
    public void actionA(){
    //treatment for actionA
    }
    public void actionD(){
    //treatment for actionD
    }
}    
Mylistener l2 = new MylistenerWrapper(){
    public void actionC(){
    //treatment for actionC
    }
}

My question : what design pattern is this ? I already named my class wrapper (adapter) is it ok ?

+1  A: 

Adapter probably (by analogy with different EventListenerAdapters in Swing).

Roman
+1 thx Roman !! very good analogy !!
wj