标签:
设计理念
因为不需要进行同步操作,所以它是通过回避问题而不是解决问题的态度来处理并发控制的
构建不变模式的方法:
1、这个类本身就是final的,那么这个类就不可能会有子类,从而也就不可能有被子类修改的问题。
2、去除setter方法以及其他可以修改自身属性的方法。
不变和只读的区别
"不变"(Immutable)与"只读"(Read Only)是不同的。当一个变量是”只读“时,变量的值不能直接改变,但是可以在其他变量发生改变的时候发生改变。比如,一个人的出生年月日是”不变“属性,而一个人的年龄便是”只读“属性,不是”不变“属性。随着时间的变化,一个人的年龄会随之发生变化,而人的出生年月日则不会变化。这就是”不变“和“只读”的区别。
不变模式在JDK中应用
String+所有的原数据包装类:他们在实际开发中被广泛使用,在多线程环境中,省去了很多因为加锁同步引起的开销。,提高了性能
标签:
原文地址:http://my.oschina.net/milne/blog/494675