Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在c#中,默认情况下方法是私有的吗?_C# - Fatal编程技术网

在c#中,默认情况下方法是私有的吗?

在c#中,默认情况下方法是私有的吗?,c#,C#,如果我有一个没有指定其可访问性级别的方法,默认情况下它是私有的吗 void Item_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { throw new NotImplementedException(); } 上述方法是私有的吗?是的,它是私有的。它是私有的。如果未定义任何修饰符,则一般规则为“此处可应用的最受限修饰符已使用”,因此对于方法为私有,对于

如果我有一个没有指定其可访问性级别的方法,默认情况下它是私有的吗

void Item_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
    throw new NotImplementedException();
}        

上述方法是私有的吗?

是的,它是私有的。

它是私有的。如果未定义任何修饰符,则一般规则为“此处可应用的最受限修饰符已使用”,因此对于方法为私有,对于顶级类为内部,等等。

对于类内的方法,默认值为私有。根据声明内容的范围不同,它也会有所不同,这里有一个更详细的示例

@Cloud-但这样你就不会得到任何声誉积分;)@云-我想要一个更科学的答案。当VS自动生成一个方法存根时,它会创建一个具有私有可访问性的方法,而不是没有任何可访问性关键字。它是根据Julien Lebosquain在其回答中解释的相同规则执行的。你可以把它看作是一种“安全总比后悔好”的方法。与其有太多你不知道的可访问性,不如有更少的可访问性和编译错误(将来)此外,这种行为可能还有与性能相关的原因。