final 实例域

扶醉桌前 提交于 2020-01-12 00:03:34

可以将实例域定义为 fina。l

构建对象时必须初始化这样的域

必须确保在每 一个构造器执行之后, 这个域的值被设置, 并且在后面的操作中, 不能够再对它进行修改

因为在对象构建之后,这个值不会再 被修改, 即没有 setName 方法。

class Employee

{
        private final String name;

}

final 修饰符大都应用于基本(primitive) 类型域

 

不可变(immutable) 类的域(如果类 中的每个方法都不会改变其对象

, 这种类就是不可变的类。 例如, String 类就是一个不可变 的类 )。

对于可变的类, 使用 final 修饰符可能会对读者造成混乱。 例如,

private final StringBuiIcier evaluations;

 

关键字只是表示存储在 evaluations 变量中的对象引用不会再指示其他 StringBuilder 对象。 不过这个对象可以更改:

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!