0
對於特定的上下文,我使用C#開發,但我想這可以應用於其他語言/框架。屬性獲取者的訪問修飾符
據我所知,創造了私人的getter和setter方法公開的屬性是完全合法的:
public int MyInt { private get; set; }
我無法弄清楚爲什麼人會希望允許客戶設置一個屬性而不能夠獲得其當前價值。在什麼情況下可能會出現這種類型的行爲?
對於特定的上下文,我使用C#開發,但我想這可以應用於其他語言/框架。屬性獲取者的訪問修飾符
據我所知,創造了私人的getter和setter方法公開的屬性是完全合法的:
public int MyInt { private get; set; }
我無法弄清楚爲什麼人會希望允許客戶設置一個屬性而不能夠獲得其當前價值。在什麼情況下可能會出現這種類型的行爲?
這不是「客戶」,這改變了值,這是程序的其他部分。
,你希望其他對象要改變對象的狀態的能力,通過該屬性有可能。
對象的其他部分,但是對於該對象的狀態不護理,它只能保持內部邏輯。
這一切都取決於您的應用程序的情況和結構。
好的......也許「客戶端」是錯誤的詞。我正在尋找「誰使用這個物體。」其次,我正在尋找一個對象的情況(可能是一個例子),它想要盲目地在另一個對象上設置一個屬性,並且永遠不會檢索它。 – gregsdennis
@gregsdennis:例如,我可能想用一個用戶名和一個密碼實例化一個數據庫連接對象。但是,這些憑據絕不能透露。它們可以由責任對象設置,但不應該被訪問。細節僅由內部對象邏輯使用。 –
很好的例子。謝謝。我的好奇心已經消失了。 – gregsdennis