内部クラス内の変数を変更する必要があり、悪名高い「別のメソッドで定義された内部クラス内の非最終変数を参照できません」というエラーが発生しました。
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
また、クラスに名前を付けるのにこの単語を使用するのは本当に嫌いです。クラスの名前をよりわかりやすくするために、実際に行ったことのプログラミング用語はありますか?