尽量使用final是一个好习惯

final很多语义,那么注定了它的优点和不足。

优点:
1.大多数POJO的使用场景中,将其作为一个VO或者TO,那么不希望对象状态总是变化。
2.JMM确保了final字段的线程安全。
3.帮助Java Compiler inline。

缺点:
1.final化的不足,JVM并不能final 数组内部的成员对象。
2.final的实例字段,仍然可以被修改(JDK 5之后,可以通过反射修改)。


尽量的使用final是好的习惯~