【问题标题】:How do I properly make a class internal?我如何正确地在内部创建课程?
【发布时间】:2014-07-01 13:59:19
【问题描述】:

只是一个简单的问题:我希望我的程序集只有一个类是公开的,而其他所有内容对外部都是不可见的。我是否只是将所有其他类及其方法和属性设置为内部?这甚至是一个好方法吗?

【问题讨论】:

  • “这是一个好方法吗?”好吧,它本质上没有任何问题,但是您没有提供太多上下文来知道它是否是正确的方法。
  • 正如@Christos 提到的,该类的默认访问修饰符是 internal

标签: c# internal


【解决方案1】:

所有类默认为internal。因此,如果您希望他们成为public,您必须说明这一点。

因此,您可以将想要公开的单个类设为公开,并将其余的类标记为 internal,因为这可以提高代码的可读性,正如 Silvermind 在他的评论。

当一个类是internal 时,它只能被同一程序集中的类型访问。话虽如此,您必须决定一个类型的方法(内部的)是否将被同一程序集中的其他类型使用。如果一个方法不会被其他类型调用,那么你必须将它声明为private,否则声明为public。属性也是如此。此外,类成员也可以是protected。有关后者的更多信息,请查看here

【讨论】:

  • 只是一个注释,但是明确地将一个类标记为内部是一种比不指定任何内容来暗示默认行为更好的方法。 IMO 更清楚程序员的实际意图是什么。
【解决方案2】:

默认所有类都是Internal。因此,您无需显式将类设置为内部。

【讨论】:

    猜你喜欢
    • 2014-06-08
    • 1970-01-01
    • 1970-01-01
    • 2022-01-18
    • 2014-11-17
    • 2020-05-19
    • 1970-01-01
    • 2016-04-15
    • 2017-01-19
    相关资源
    最近更新 更多