修饰符 应用于 说明
public 所有的类型或成员 任何代码均可以访问该方法
protected 类型和内嵌类型的所有成员 只有派生的类型能访问该方法
internal 类型和内嵌类型的所有成员 只能在包含它的程序集中访问该方法
private 所有的类型或成员 只能在它所属的类型中访问该方法
protected internal 类型和内嵌类型的所有成员 只能在包含它的程序集和派生类型的代码中访问该方法
注意:类型定义可以是公共或私有的。这取决于是否在包含类型的程序集外部访问它。
不能把类型定义为protected,internal和protected internal.因为这些修饰符对于包含在命名空间中的类型来说是没有意义的。因此这些修饰 符只能应用于成员。但是,可以用这些修饰符定义嵌套的类型(即包含在其他类型中的类型),因为在这种情况下,类型也具有成员的状态。
如果有嵌套的类型,内部的类型总是可以访问外部类型的所有成员,所以在上面的代码中,InnerClass中的代码可以访问OuterClass的所有成员,甚至可以访问OuterClass的私有成员。