(摘自微软官方)
使用访问修饰符 public、protected、internal 或 private 可以为成员指定以下声明的访问级别之一。
public | 访问不受限制。 |
protected | 访问仅限于包含类或从包含类派生的类型。 |
internal | 访问仅限于当前程序集。 |
protected internal | 访问仅限于从包含类派生的当前程序集或类型。 |
private | 访问仅限于包含类型。 |
一个成员或类型只能有一个访问修饰符,但使用 protected internal 组合时除外。
不嵌套在其他类型中的顶级类型的可访问性只能是 internal 或 public。 这些类型的默认可访问性是 internal
C#成员类型的可修饰及默认修饰符如下表:
成员类型 默认修饰符 可被修饰符
enum | public | 无 |
class | private | public protected internal private protected internal |
interface | public | 无 |
struct | private | public internal private |
嵌套类型的可访问性取决于它的可访问域,该域是由已声明的成员可访问性和直接包含类型的可访问域这二者共同确定的。 但是,嵌套类型的可访问域不能超出包含类型的可访问域