C# 类内的可访问性

C# 类内的可访问性,c#,.net,C#,.net,默认情况下,类中的所有内容都是私有的。 默认情况下,非嵌套类、接口、结构、委托和枚举具有内部可访问性。 但这意味着,如果所有这些都在类内,那么默认情况下,所有内容都将是私有的。 在默认情况下,类中是否有非私有的类型 另外,这只是一种例外情况,比如一个实例变量,我们不能在结构中分配任何值,但通过使用null合并运算符,我们可以分配。请阅读 结构成员(包括嵌套类和结构)可以声明为public、internal或private。类成员(包括嵌套类和结构)可以是公共的、受保护的内部的、受保护的、内部的或

默认情况下,类中的所有内容都是私有的。 默认情况下,非嵌套类、接口、结构、委托和枚举具有内部可访问性。 但这意味着,如果所有这些都在类内,那么默认情况下,所有内容都将是私有的。 在默认情况下,类中是否有非私有的类型

另外,这只是一种例外情况,比如一个实例变量,我们不能在结构中分配任何值,但通过使用null合并运算符,我们可以分配。

请阅读

结构成员(包括嵌套类和结构)可以声明为public、internal或private。类成员(包括嵌套类和结构)可以是公共的、受保护的内部的、受保护的、内部的或私有的类成员和结构成员(包括嵌套类和结构)的访问级别默认为私有。无法从包含类型的外部访问私有嵌套类型

(强调我的)。

请阅读

结构成员(包括嵌套类和结构)可以声明为public、internal或private。类成员(包括嵌套类和结构)可以是公共的、受保护的内部的、受保护的、内部的或私有的类成员和结构成员(包括嵌套类和结构)的访问级别默认为私有。无法从包含类型的外部访问私有嵌套类型


(强调我的)。

@Jon我查看了所有这些博客和网站,这就是为什么我要问是否存在任何例外情况。如果我们检查任何网站,您可以看到我们无法在结构内部初始化的实例类型。但是我们可以借助于null coleasing操作符来实现。在加法中,为什么要保留它们的默认值?始终是显式的,并为它们提供适当的可访问性。@这仅适用于命名空间级别的声明。嵌套声明在默认情况下是私有的。@James该行的开头是“在类内部”-因此,不是所有内容都是
内部的
。正如正确指出的那样,
private
@peter Downvoting是一种常见的方法,可以提请注意可能重复的问题。这不一定表明这个问题有什么问题。@Jon我看过所有这些博客和网站,这就是为什么我问是否有例外情况。如果我们检查任何网站,你可以看到实例类型,我们无法在结构中初始化。但是我们可以借助于null coleasing操作符来实现。在加法中,为什么要保留它们的默认值?始终是显式的,并为它们提供适当的可访问性。@这仅适用于命名空间级别的声明。嵌套声明在默认情况下是私有的。@James该行的开头是“在类内部”-因此,不是所有内容都是
内部的
。正如正确指出的那样,
private
@peter Downvoting是一种常见的方法,可以提请注意可能重复的问题。这不一定表明这个问题有什么问题。