1、不加访问权限修饰符时的默认访问权限说明 ①、声明命名空间、类,前面不加限制访问修饰符时,默认访问权限为internal——访问仅限于当前程序集。

②、声明类成员(包括字段(变量)、属性和方法)默认为private)以及结构类型,前面不加限制访问修饰符时,默认访问权限为private——访问仅限于当前类。

③、声明枚举类型以及接口类型,前面不加限制访问修饰符时,默认为public且只能为public(就算要把限制访问修饰符写出来,也只能写public,而不能使用其他限制访问修饰符)——访问不受限制。   2、访问权限修饰符及默认访问权限

public


程序集内外都可访问

枚举类型成员或接口隐含的访问权限


internal


程序集内或友元程序集内可访问

非嵌套类型的默认访问权限


private


仅在包含类型中可见

类成员或结构体成员的默认访问权限


protected


仅在包含类型中或子类中可见


proctected internal


protected和internal访问权限的并集(在程序集中或其他程序集的子类中可访问)。

Eric Lippert这样解释:默认情况下尽可能将所有成员定义为私有,然后每一个修饰符都会提高其访问级别。