Bootstrap

C#访问修饰符internal、private、protected、public、protected internal、private protected、file

internal

只有在同一程序集的文件中,内部类型或成员才可访问

private

私有访问是允许的最低访问级别。 私有成员只有在声明它们的类和结构体中才是可访问的

protected

基类和派生类可访问

public

public 关键字是类型和类型成员的访问修饰符。 公共访问是允许的最高访问级别。 对访问公共成员没有限制

protected internal

protected internal 关键字组合是一种成员访问修饰符。可从当前程序集 派生类访问受保护的内部成员

private protected

只能在包含的程序集的派生类中访问

通过实例访问会产生错误。 但是,如果将其用作继承的成员,则会成功。

file

file 可以应用于任何类型定义以限制其只能在当前文件中使用。这样,我们可以在一个项目中拥有多个同名的类。。 file 修饰符通常应用于源生成器编写的类型。 文件本地类型为源生成器提供了一种方便的方法,能够避免在生成的类型之间发生名称冲突。 file 修饰符声明文件本地类型,如以下示例所示:

file class HiddenWidget
{
    // implementation
}

file不可以与其他修饰符一起使用

需要注意的是:从C# 11开始,file关键字是类型修饰符,这也意味着它不能与其他修饰符一起使用,比如public、internal、private 等。

file可以修饰的类型

class
struct
interface
enum
delegate
record
record struct

file 不可修饰的类型

file修饰符不适用于嵌套在父类型中的类型。

它也不适用于方法属性、事件和字段,但语言设计说明解释说:“为非类型文件范围的成员留出设计空间,以便以后出现。”
在这里插入图片描述

;