据我所知,private是默认无处不在C#中(也就是说,如果我不写public,protected,internal等这将是private默认情况下).(如果我错了,请纠正我.)
那么,编写该关键字的原因是什么,或者为什么它甚至存在于成员中?
例如,当自动生成事件处理程序时,它看起来像这样:
private void RatTrap_MouseEnter(object sender, CheeseEventArgs e)
{
}
Run Code Online (Sandbox Code Playgroud)
但是,如果暗示和默认,为什么它甚至写私人?只是为了让新手开发人员(不知道它是C#默认值)知道它是私有的吗?或者编译器有区别吗?
此外,是否存在写"私人"(单独)会改变会员的可访问性的情况?
鉴于这两个例子是等价的,您认为哪些是可取的?
没有显式修饰符
public class MyClass
{
string name = "james";
public string Name {
get { return name; }
set { name = value; }
}
void SomeMethod() { ... }
}
Run Code Online (Sandbox Code Playgroud)
使用显式修饰符
public class MyClass
{
private string name = "james";
public string Name {
get { return name; }
set { name = value; }
}
private void SomeMethod() { ... }
}
Run Code Online (Sandbox Code Playgroud)
我一直使用后者,但最近我开始采用前一种风格.私有是多余的,因为它是默认的访问者修饰符,所以排除它是否有意义?