qui sont, pour chacun de la méthodologie suivante pour mettre en œuvre un auditeur d'interface, les avantages et les inconvénients:Avantages et inconvénients d'utiliser les auditeurs d'interface
1) dans la classe principale comme:
class MyClass implements ActionListener {
public void actionPerformed(ActionEvent e) {
// ...
}
component.addActionListener(this);
}
2) en tant que classe interne
class MyClass {
private class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
// ...
}
}
MyActionListener mal = new MyActionListener();
component.addActionListener(mal);
}
3) comme une classe interne anonyme
class MyClass {
component.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// ...
}
});
}
La plus grande différence est dans la première implémentation. Vous exposer l'actionPerformed au monde (puisque c'est directement sur votre classe publique) plutôt que de le cacher à l'intérieur par l'une des deux autres options que vous mentionnez.2) et 3) est purement un choix de style. –
@Kirk: Pas de style * purement *, il y a un aspect de réutilisation, mais oui c'est proche. Spot sur autrement. –