![]() |
1
7
我不知道你说它是一个未知值的变量是什么意思;最后的意思是,一旦给变量赋值,它就不能被修改 重新 -已分配。由于您没有在方法中更改userID的值,因此在本例中使其成为final是没有问题的。 |
![]() |
2
10
正如其他人所说,局部变量必须是最终的,才能被内部类访问。 这就是为什么。。。如果您编写以下代码(长答案,但在底部,您可以得到短版本:-):
然后这个:
最后一点:
重要的一点是它将构造函数添加到$1。想象一下,如果你能做到这一点:
您可能希望foo.bar()会打印出1,但实际上会打印出42。通过要求局部变量是最终的,这种混乱的情况就不会出现。 |
![]() |
3
2
最终有效 . 中的相关片段和示例 Oracle documentation
有效最终: 一个非最终变量或参数,其值在初始化后从未改变,实际上是最终的 .
|
![]() |
4
1
做这个有什么问题吗
|
![]() |
5
1
声明方法
值必须是final,这样编译器才能确保它不会更改。这意味着编译器可以随时将值绑定到内部类,而不必担心更新。 代码中的值没有更改,因此这是一个安全的更改。 |
![]() |
ferrerverck · java,匿名内部类问题 11 年前 |