【发布时间】:2018-10-25 13:28:27
【问题描述】:
假设我有命名空间Events,它只包含EventManager 和EventType 类。
我希望EventType 在任何其他命名空间中不可见,唯一应该能够看到EventType 的类是EventManager。
我该怎么做?我读过一些关于 Friend 的文章,但仍然不知道这是正确的选择。
【问题讨论】:
-
C# 中没有访问修饰符限制为命名空间。您只能将类型声明为
internal以限制对包含程序集的可见性。 -
我觉得你对班级的性别分配很有趣。
-
不完全确定您的目的,但如果您在事件管理器中将 EventType 设为子/嵌套类,您可以将其设为 Protected 以防止其他类使用它,我相信。 stackoverflow.com/questions/1017778/protected-classes-in-net 更详细。
-
您可以将
EventType设为EventManager类中的私有类 -
@STLDeveloper:在法语中我相信它是 "la classe" - 如此女性化
标签: c# namespaces visibility