Originariamente inviato da Raziel86
Invoco Setta solo per settare il colore di un determinato pulsante quando cliccato e basta.
No alt, un attimo. Se invochi Setta su un pulsante X quando il pulsante X viene cliccato ... allora vuol dire che c'è già un listener sul pulsante .... è allora perché dovresti registrare un nuovo listener?

Setta, per come l'hai fatto, ha senso invocarlo solo 1 volta su ogni pulsante e solo durante la inizializzazione della tua interfaccia (prima che chiunque faccia dei click).

Originariamente inviato da Raziel86
Per quanto riguarda le variabili final... si, avevo letto che le inner class utilizzano solo costanti, ma se appunto sono costanti, poi come fanno a variare?
Non deve variare un bel nulla .... Setta serve solo per registrare un listener sul pulsante [i ][j] e in questo caso il listener (che è un oggetto!) si "tiene dentro" semplicemente i e j.
Invochi Setta(3, 4) ? Bene, viene istanziato un listener che si tiene dentro i=3 e j=4 e ogni volta che clicchi, in actionPerformed hai proprio i=3 e j=4. Ma solo per quel certo pulsante a [3][4], è ovvio. Ogni pulsante ha il suo listener e ciascun listener si tiene le "coordinate" per quel pulsante.