创建不可变类
不可变对象对于缓存是非常好的选择,因为你不需要担心它的值会被更改。不可变类的另外一个好处是它自身是线程安全的,你不需要考虑多线程环境下的线程安全问题。
阅读更多: Java线程教程以及Java多线程面试问题
下面是创建不可变类的方法,我也给出了代码,加深理解。
要创建不可变类,要实现下面几个步骤:
- 将类声明为final,所以它不能被继承
- 将所有的成员声明为私有的,这样就不允许直接访问这些成员
- 对变量不要提供setter方法
- 将所有可变的成员声明为final,这样只能对它们赋值一次
- 通过构造器初始化所有成员,进行深拷贝(deep copy)
- 在getter方法中,不要直接返回对象本身,而是克隆对象,并返回对象的拷贝
http://www.importnew.com/7535.html
浙公网安备 33010602011771号