我在方法中有这样的代码:
final TouchableSpan touchableSpan = new TouchableSpan() {
@Override
public void onClick(View widget) {
this.setPressed(true);
String extravar = touchableSpan.getMyVar();
}
在这一行String extravar = touchableSpan.getMyVar();
上,我收到一条警告,表示变量touchableSpan
可能尚未初始化。为什么?
当我添加final
修饰符时,会出现此警告。在我variable is access from inner class, needs to be declared final
之前。
答案 0 :(得分:9)
首先创建一个匿名类,然后将其分配给最终变量。因此,理论上可以在最终变量初始化之前调用onClick
方法。为什么不使用this.getMyVar()
?