public-公有访问权限 方法和属性前面用public修饰时,表示为公共访问权限,该方法或属性访问不受限制,可以类内和任何类外的代码中访问,是能见度最高的 修饰符。
private-私有访问权限 方法和属性前面用private修饰时,表示为私有访问权限,该方法或属性只在类的内部可见,是能见度最低的访问修饰符。
protected-受保护的访问权限 方法和属性前面用protected修饰时,表示为受保护访问权限,该方法或属性只在类的内部可见,或者其子类中可见
internal-内部访问权限 方法和属性前面用internal修饰时,表示为内部访问权限,访问仅限于程序集中。
protected internal-受保护或内部访问权限 方法和属性前面用protected internal修饰时,表示为内部+受保护访问权限,该方法或属性在程序集中或其子类中可以访问。
需要注明的是:
- protected的权限和private的权限很相似,唯一不同的是protected类型成员可以被子类继承,而private类型成员不可以被继承。
- protected internal类型成员可以被理解成protected or internal 类型成员。不存在protected and internal类型成员。
修饰符 | 自身类内部 | 子类 | 程序集 | 任何地方 |
default | √ | |||
public | √ | √ | √ | √ |
private | √ | |||
protected | √ | √ | ||
internal | √ | √ | √ | |
protected internal | √ | √ | √ |
仅个人记录学习使用,侵权删。