我需要更改内部类中的变量,然后我得到了臭名昭著的“无法引用以不同方法定义的内部类中的非最终变量”错误。
void onStart(){
bt.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
int q = i;
}
});
}
我很快创建了一个包含我想要更改的所有内容的类,并在内部类之外制作了该类的最终版本
class temp{
int q;
}
void onStart(){
final temp x = new temp();
bt.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
x.q = i;
}
});
}
这似乎是我需要的并且它有效,但我想知道这是否是正确解决问题的方法。另外,我真的很讨厌用这个词temp
来命名我的班级。我所做的事情是否有一个实际的编程术语,以便我为我的班级取一个更具描述性的名称?