Salutations!
En avancant dans l'apprentissage du java je suis arriver dans les event handling et j'ai découvert une chimère du javac'est-à-dire déclarer une classe dans l'appel d'une procédure. En voici un exemple :
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?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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); } } ); } }
Si il y a un gain/perte de performance? Ou c'est tout simplement une possibiiltee qu'offre le java?
Partager