ActionListener

Observem o seguinte trecho:

class TabuleiroX{
JButton b[][]=new JButton[][];

void poe_nome(){
for(int i=0;i<15;i++){
for(int j=0;j<15;j++){
b[i][j].addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
b[i][j].setText("Linha: "+i+"Coluna: "+j);
}
});
}
}
}

Me ajudem a solucionar o problema… o eclipse aponta o erro dizendo que as variaveis i e j tem q ser finais, e mesmo fazendo isso, aparece outro erro com a variavel J…
Obrigado

Você não pode fazer isso desse jeito, uma variavel local só pode ser acessada de uma subclasse se ela for final, porem se ela é final você não pode incrementa-la (i++, j++):

Tente assim:

void poe_nome&#40;&#41;&#123; for&#40;int i=0;i&lt;15;i++&#41;&#123; for&#40;int j=0;j&lt;15;j++&#41;&#123; final JButton btn = b&#91;i&#93;&#91;j&#93;; final String nome = &quot;Linha&#58; &quot;+i+&quot;Coluna&#58; &quot;+j; btn.addActionListener&#40;new ActionListener&#40;&#41;&#123; public void actionPerformed&#40;ActionEvent e&#41;&#123; btn.setText&#40;nome&#41;; &#125; &#125;&#41;; &#125; &#125; &#125;