更新:2007 年 11 月
使用访问修饰符 
声明的可访问性  | 含义  | 
|---|---|
public  | 访问不受限制。  | 
protected  | 访问仅限于包含类或从包含类派生的类型。  | 
internal  | 访问仅限于当前程序集。  | 
protectedinternal  | 访问仅限于从包含类派生的当前程序集或类型。  | 
private  | 访问仅限于包含类型。  | 
一个成员或类型只能有一个访问修饰符,但使用 protectedprotected 组合时除外。
命名空间上不允许使用访问修饰符。命名空间没有访问限制。
根据出现成员声明的上下文,只允许某些声明的可访问性。如果在成员声明中未指定访问修饰符,则使用默认的可访问性。
不嵌套在其他类型中的顶级类型的可访问性只能是 internal 或 public。这些类型的默认可访问性是 internal。
嵌套类型是其他类型的成员,它们可以具有下表所示的声明的可访问性。
属于  | 默认的成员可访问性  | 该成员允许的声明的可访问性  | 
|---|---|---|
enum  | public  | 无  | 
class  | private  | public protected internal private protectedinternal  | 
interface  | public  | 无  | 
struct  | private  | public internal private  | 
嵌套类型的可访问性取决于它的
C# 语言规范
有关更多信息,请参见 C# 语言规范中的以下各章节:
3.5.1 声明的可访问性
3.5.3 对实例成员的受保护访问
3.5.4 可访问性约束
10.3.5 访问修饰符
10.3.8.2 声明的可访问性