2011-12-05 46 views
4

我使用只讀集合來防止用戶更改我的緩存數據,但這些項目本身是可以隨意更改的。 有沒有辦法阻止這種行爲?不可變的集合?

米歇爾

+1

使用不可變的項目。 – CodesInChaos

+0

返回不可變的對象,而不是可變的對象? –

+0

而且,嗯,我如何讓項目不可變? – Michel

回答

6

要麼使緩存項目不可改變的自己,或通過複製對象

+0

我如何讓一個緩存項目不可變? – Michel

+0

@Michel - 製作不可變的對象並緩存它們。 – Oded

0

你可以設置私人構造 - 所以只有裏面的項目可以創建實例。

此外,您還可以使用構造函數把只讀值....