【问题标题】:Default Class Accessibility in C#C# 中的默认类可访问性
【发布时间】:2023-03-14 03:17:01
【问题描述】:

默认是一个类:

  1. 私人的?
  2. 内部?
  3. 密封?

【问题讨论】:

    标签: c# oop


    【解决方案1】:

    非嵌套类型的默认值是内部的。 嵌套类型的默认值是私有的。 在这两种情况下,默认值(对于类)都是未密封的。

    所有成员的一般规则是,如果您不指定访问修饰符,它会尽可能地私有。唯一的例外是属性,它可以通过指定访问修饰符使一部分(即 getter 或 setter)比整体属性更私有,例如

    public string Foo { get; private set; }
    

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 您的答案省略了嵌套类型的情况,默认为私有。
      【解决方案3】:

      另外,默认情况下它是不密封的。我相信嵌套类默认是私有的。

      【讨论】:

        【解决方案4】:

        不嵌套到其他类型中的顶级类型只能具有内部或公共可访问性。这些类型的默认可访问性是internal

        Accessibility Levels (C#) on MSDN

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-11-18
          • 2013-04-23
          • 2017-01-26
          • 2011-04-18
          • 2011-04-10
          相关资源
          最近更新 更多