class A {
final int a;
A () {
this.a = 1; // No error
}
}
鉴于下面的代码
class A {
final int a;
A () {
A.this.a = 1; // Error: java: cannot assign a value to final variable a
}
}
使用this.a
为最终字段赋值可以很好地工作.但是,使用A.this.a
为最终字段赋值会给出错误"Java:无法为最终变量a赋值".不知道为什么?
我明白在这种情况下没有理由显式地使用A.this.a
而不是this.a
.只是想弄明白原因.