2010-05-11 2 views
1

У меня есть следующий код из проекта GWT, который является частью onModuleLoad() метод (по аналогии с основным методом в Java, если вы не знаете, GWT):Когда и почему EventHandler требует, чтобы объекты были окончательными?

final TextBox t1 = new TextBox(); 
final Label lt1 = new Label(); 

t1.addKeyUpHandler(new KeyUpHandler() { 

    @Override 
    public void onKeyUp(KeyUpEvent event) { 
     // TODO Auto-generated method stub 
     if (!(t1.getText().matches("\\w{2}-\\w{2}-\\w{2}"))) 
      lt1.setText("Invalid."); 
      else 
      lt1.setText("OK."); 
    } 
}); 

Почему две локальные переменные имеют быть окончательным здесь?

+1

Дубликат http://stackoverflow.com/questions/2764035/question-regarding-the-method-local-innerclasses-accesing-the-local-variables-of/2764057#2764057 –

+0

Это тоже: http: // stackoverflow.com/questions/2320762/java-final-an-enduring-mystery/2320774#2320774 –

ответ