1

因为 val 在 Java 中类似于 final,所以大多数 Java 对象引用是否应该标记为 final,因为在 Scala 中使用 val 是一种好习惯?

4

3 回答 3

2

当然,final在 Java 中创建类变量是一种很好的做法,尽可能鼓励不变性。

至于局部变量——方法参数等——在不需要的时候是否应该标记为final,这是一个风格问题。就个人而言,我觉得它在使用时往往会使事情变得混乱,除非有其他必要(例如,使变量在匿名内部类中可访问)。

于 2013-01-03T19:19:30.213 回答
1

参考文献应尽可能多地是最终的。它允许更大的运行时优化,并且有助于“以合同方式”确保您(或您的代码的后续维护者)不会意外更改引用。对我来说,它类似于“私人”,因为你应该尽可能地让事情变得私密。它为您提供了未来重构的灵活性,而不会影响代码库的其他部分(最小化涟漪效应)。

于 2013-01-03T19:19:11.080 回答
0

作为大多数决定,使用final是对编码约定的讨论。

final如果仅分配一次,我自己会制作所有参数和变量。我认为它增加了代码的可读性。

Eclipse 有一个SaveAction可以添加final的地方。

也许关键字可以帮助编译器检测可能的优化(或者将来的编译器将能够使用此提示)

于 2013-01-03T19:20:34.157 回答