概念:spa
可變類:當你得到這個類的一個實例引用時,你能夠改變這個實例的內容。變量
不可變類:當你得到這個類的一個實例引用時,你不能夠改變這個實例的內容。不可變類的實例一但建立,其內在成員變量的值就不能被修改。權限
如何保證一個不可變類不被修改:引用
一、全部成員權限爲private方法
二、不提供改變的方法setXXXco
三、確保全部方法不會被重載,有兩種方法:使用final Class(強不可變類);或者將全部類方法加上final(弱不可變類)。background