1)使用場景:牽涉到對資料物件進行修改時,可能由於修改的順序而造成資料的錯亂,此時使用不變物件就可以避免,而且還可以不使用高開銷的synchronizing方法。乙個資料模型類的例項所持有的資料在整個生命週期中都不變,這個類就會是執行緒安全。
2)設計方法:
a)所有的例項變數都必須在建構函式中設定,因為建構函式是執行緒安全的。
b)將這個類設定為final,防止類由於繼承而產生的類方法的覆蓋。
c)所有的例項變數都必須設定為final,確保只在建構函式中一次設定。
d)若例項變數中包含有指向其他物件的引用,那麼其對應的getter方法應該返回這個物件的拷貝。
3)例項:
物件導向設計基礎 不變物件
1 使用場景 牽涉到對資料物件進行修改時,可能由於修改的順序而造成資料的錯亂,此時使用不變物件就可以避免,而且還可以不使用高開銷的synchronizing方法。乙個資料模型類的例項所持有的資料在整個生命週期中都不變,這個類就會是執行緒安全。2 設計方法 a 所有的例項變數都必須在建構函式中設定,因...
物件導向5 設計模式
設計模式 1.什麼是設計模式?答 設計模式就是解決某類問題最行之有效的解決方案,設計模式是一種思想。單例設計模式?1.單例設計模式解決的問題 保證乙個類在記憶體中只存在乙個物件。簡單說,就是保證乙個類在記憶體中的物件的唯一性。2.應用場景 如配置檔案。a要使用配置檔案物件。b程式也要實用配置檔案物件...
物件導向設計模式基礎
首先 使用物件導向設計模式能夠使 易維護,可復用,可擴充套件,靈活性好 這是我們需要達到的目標 其次 如果想要達到這樣的目標,就需要在 的設計過程中,遵守以下的原則 顯示簡單的說明 1.開放封閉的原則 盡量對修改關閉,對擴充套件開啟 2.高內聚低耦合的原則 模組內部緊湊,模組之間耦合度較小 3.單一...