因为你不能设置最终变量的值(我假设)像数组的长度.
Object[] items = new Object[10];
//Not allowed
Object.length = 3;
Run Code Online (Sandbox Code Playgroud)
可以将它用作类中的只读字段.
这取决于你的意思"好".你无法改变的原因items.length是这length是一个只读字段; 创建数组后,其大小是固定的.无论是否items声明,您指定的"不允许"行都将无效final.
要明白,做是很重要的items一个final变量只是意味着你不能改变变量的值是指不同的阵列.变量值是引用,而不是数组本身.您无法更改变量引用的数组,但仍可以更改数组的内容:
// Entirely valid...
items[0] = new Object();
Run Code Online (Sandbox Code Playgroud)
如果你想要一些真正不可变的东西,你就不能使用数组.
| 归档时间: |
|
| 查看次数: |
263 次 |
| 最近记录: |