使用访问修饰符、public
、protected
internal
或private
,为成员指定以下声明的辅助功能级别之一。
声明的辅助功能 | 含义 |
---|---|
public |
访问不受限制。 |
protected |
访问权限仅限于派生自包含类的包含类或类型。 |
internal |
访问权限仅限于当前程序集。 |
protected internal |
访问权限仅限于从包含类派生的当前程序集或类型。 |
private |
访问权限仅限于包含类型。 |
private protected |
访问权限仅限于从当前程序集中的包含类派生的包含类或类型。 |
成员或类型仅允许一个访问修饰符,但使用 protected internal
或 private protected
组合时除外。
命名空间上不允许访问修饰符。 命名空间没有任何访问限制。
根据成员声明的发生上下文,只允许某些声明的辅助功能。 如果未在成员声明中指定任何访问修饰符,则使用默认辅助功能。
顶级类型不能嵌套在其他类型的类型中,只能具有 internal
或 public
可访问性。 这些类型的默认可访问性为 internal
。
嵌套类型(属于其他类型的成员)可以声明辅助功能,如下表所示。
成员 | 默认成员辅助功能 | 成员的允许声明可访问性 |
---|---|---|
enum |
public |
没有 |
class |
private |
public protected internal private protected internal private protected |
interface |
public |
public protected internal private *protected internal private protected |
struct |
private |
public internal private |
interface
* 具有private
辅助功能的成员必须具有默认实现。
嵌套类型的可访问性取决于其 辅助功能域,该域由成员的声明可访问性和立即包含类型的辅助功能域确定。 但是,嵌套类型的可访问域不能超出包含类型的可访问域。
C# 语言规范
有关详细信息,请参阅 C# 语言规范。 语言规范是 C# 语法和用法的明确来源。