代码里每一个只 declare 一次然后再不去修改的变量都必须加上 final 吗?大家有什么看法?
|
1
设计上确实不能变化的才要加。比如某个类会作为 hashmap 的 key,而 hashcode 的计算是来自其成员的组合,那么这个类的所有成员都必须是 final
|
|
mx1700Aug 17, 2019 via Android
2
是好习惯
|
|
BCy66drFCvk1Ou87Aug 17, 2019
3
《 Java 并发编程实战》里面有说到如何安全地发布变量,final 关键字在一些时候非常重要
|
|
4
这样就不会有共享变量的并发问题
|
|
mxalbert1996Aug 17, 2019 via Android
5
在写 kotlin 的时候如果可以用 val 的变量你用了 var 的话 IDE 都会标黄提示你修改。
|
|
niubee1Aug 17, 2019
6
一开始就养成用 Immutable 来定义中间量的话,就不会怕后面自己坑自己了。
|
|
DeweyReedAug 17, 2019
7
不这么做,IDE 和 Lint 都会提警告的呀!
|
|
ming2050Aug 17, 2019
8
这是一个好习惯吧
|
|
lyogAug 17, 2019 via iPhone
9
基础类型这样没问题,但是像 map,list,自己定义的实体等等,个人感觉 final 没有啥意义,只 final 了地址,里面的内容还是可以进行 add,put,set 等操作
|