我有一個類Server
,它與IRC的服務器連接進行通信。它包含已知User
的列表,並根據需要創建它們。使方法/屬性對一個類可見,對其他人隱藏
我有涉及User
類兩個問題:
- 任何人都可以創建一個
User
的一個實例。我只想要Server
類能夠做到這一點。 - 如果用戶(東西
User
描述)更改其名稱(或其他信息,如加入的渠道),Server
類可以自己更改它。但是,其他類也可以!我想禁止其他班級接觸這些信息(使其只讀)。
我該如何解決這兩個問題?在C++中,它可以通過使用關鍵字並使ctor和setName
(以及此類)保密來解決。
是否有一個C#關鍵字可以允許某個方法可以被指定的類訪問?這將解決我的問題。
我用你提出的兩種方法去了。我創建了一個接口IUser和一個ServerUser內部類。 (我也將服務器分成兩個類,以便其他人可以編寫他們自定義的IRC客戶端。)感謝您的回答! – strager 2009-02-18 00:52:30