私有关键字vs没有私人关键字

MyN*_*Job 8 .net c#

如果默认情况下所有内容都是私有的,那么private关键字的用途是什么?

public class A {
    object someObject;
    private object someOtherObject;
}
Run Code Online (Sandbox Code Playgroud)

以上两种都不是私人的吗?如果它们都是私有的那么为什么需要关键字本身?

Ste*_*end 21

显式使用关键字可以澄清代码,无论默认值是什么.

在可能的情况下,避免猜测或需要对代码阅读器/维护者进行事实检查.

通过此先前问题提供了可见性信息的参考.


jba*_*all 9

正如Steve Townsend所说,它澄清了代码,但它在具有混合访问权限的属性中也很有用,例如:

public int SomeProperty { get; private set; } 
Run Code Online (Sandbox Code Playgroud)