我有一个来自GWT项目的代码,它是onModuleLoad()方法的一部分(类似于Java的main方法,如果你不知道GWT):
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.");
}
});
为什么这两个局部变量必须是最终的?
答案 0 :(得分:3)
这个问题是关于本地内部类访问方法的局部变量的更一般问题的特化:method local innerclasses accessing the local variables of the method(PéterTörök,tnx指出了这一点)。