Inner Class ou lisibilité
Salutations!
En avancant dans l'apprentissage du java je suis arriver dans les event handling et j'ai découvert une chimère du java ;) c'est-à-dire déclarer une classe dans l'appel d'une procédure. En voici un exemple :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
class ButtonPanel extends JPanel
{
public ButtonPanel()
{
this.makeButton("Yellow", Color.YELLOW);
this.makeButton("Blue", Color.BLUE);
this.makeButton("Red", Color.RED);
}
private void makeButton(String label, final Color backgroundColor)
{
JButton button = new JButton(label);
super.add(button);
button.addActionListener(new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
ButtonPanel.this.setBackground(backgroundColor);
}
}
);
}
} |
Donc je me demandais s'il ne serait pas mieux de déclarer cette inner class dans la classe ButtonPanel que plutot dans les parametres de l'appel de la procedure button.addActionListener?
Si il y a un gain/perte de performance? Ou c'est tout simplement une possibiiltee qu'offre le java?