JAVA程序設計--對象和類(八)

不可變對象和類

如果一個類是不可變的,那麼他的所有數據域必須是私有的,而且沒有對任何一個數據域提供公共的set方法。

但反過來,卻不是一定成立!

實例:



使用getDateCreated()方法返回數據域dateCreated。它是對Dtae對象的一個引用。通過這個引用,可以改變dateCreated的值。(修改器在Date類裏)


所以要想一個類成爲不可變的,必須要:

①所有數據域必須是私有的

②沒有修改器(set方法)

③沒有一個返回指向可變數據域的引用的訪問器方法(get方法)。


變量的作用域

類的變量和方法都可以在類中以任意順序出現,但是當一個數據域是基於對另一個數據域的引用來進行初始化時則不是這樣。


如果一個局部變量和一個類變量具有相同的名字,那麼 局部變量 優先,而同名的類變量將被隱藏。

發佈了44 篇原創文章 · 獲贊 18 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章