C# 中的Friend 關鍵字
在物件導向程式設計中,「friend」關鍵字提供對某些類別的私有類別成員的受控訪問。雖然 C 提供了「friend」關鍵字,但 C# 缺乏此功能的直接等效項。
替代方案:InternalsVisibleTo
C# 利用 InternalsVisibleTo 屬性來實現對 private 的有限存取成員,主要用於測試目的。此屬性將組件或命名空間指定為受信任,從而允許它們存取對外部程式碼隱藏的內部成員。
範例
請考慮 AssemblyInfo.cs 中的以下範例:
[assembly: InternalsVisibleTo("OtherAssembly")]
此屬性使程式集可供「OtherAssembly」存取。現在可以從「OtherAssembly」存取程式集中標記為內部的任何方法或屬性。
測試中的使用
InternalsVisibleTo 屬性在單元測試中特別有用情境。透過將程序集標記為測試程序集的 InternalsVisibleTo,私有成員可以出於測試目的而訪問,同時對其他外部程式碼保持隱藏。
注意事項
雖然InternalsVisibleTo 提供了一種機制對於受控訪問,它與C“friend”關鍵字有幾個不同之處方式:
以上是C# 如何實現類似 C 的「Friend」關鍵字對私人成員的受控存取的功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!