C#中的内部关键字

Sai*_*and 2 c#

我有一个声明为内部的ac#静态类.我还在其中声明了一个静态属性.我宣布它是公开的.现在,当公共属性封装在内部类中时,它是否限制了它的范围.

这是一个小代码片段:

internal static class A
{    
    public static int RollCount
    {
           get { return _rollCount; }
    }

}
Run Code Online (Sandbox Code Playgroud)

提前致谢

Eri*_*ert 12

我有一个声明为内部的ac#静态类.我还在其中声明了一个静态属性.我宣布它是公开的.现在,当公共属性封装在内部类中时,它是否限制了它的范围.

严格地说,没有.实体的范围被定义为程序文本的区域,其中该实体可以通过其不合格的名称来引用.无论类的可访问域如何,属性的范围都是相同的; 属性的范围包括类的主体和任何子类的主体.

您实际想要问的问题是" 内部类的公共财产的可访问性域是什么?" 实体的可访问域是可访问该实体的程序文本区域.答案是"内部类的公共属性的可访问域与类的可访问域相同".内部类的可访问域是声明它的程序.


Joe*_*ler 6

成员不能比它所在的类更明显.拥有公共成员的内部或私有类并不是错误,因为如果你想使类更可见,那么你不必编辑每个成员声明.这是开始.

  • 好答案.就像在一扇关着的门后面打开一扇门.您无法看到或触摸内门,因此可访问性并不重要. (6认同)