Есть ли преимущества или недостатки в создании вложенного класса, реализующего ActionListener:
public class Foo{
Foo(){
something.addActionListener(new ButtonListener());
}
//...
private class ButtonListener implements ActionListener{
public void actionPerformed(ActionEvent e){
//...
}
}
}
по сравнению с реализацией ActionListener в самом основном классе:
public class Foo implements ActionListener{
Foo(){
something.addActionListener(this);
}
//...
public void actionPerformed(ActionEvent e){
//...
}
}
Я видел оба примера довольно часто и просто хочу знать, есть ли «лучшая практика».