C#中的五个访问修饰符

一、public, private, protected, internal, protected internal

1、public : 公开的, 公共的

2、private : 私有的 (只能在当前类的内部访问,类中的成员们,如果不加上访问修饰符的话,哪默认的就是 private)

3、protected : 受保护的,可以在当前类的内部访问,也可以该类的子类中访问

4、internal : 只能在当前项目中可以访问,如果一个类不手动加上访问修饰符的话,那默认的就是internal。 在同一个项目中 internal 和 public的访问权限是一样的

5、protected internal : protected + internal

注意: (1)能修饰类的访问修饰符只有 public 和 internal

    (2)可访问性不一致:子类的访问权限不能高于父类的访问权限,会暴漏父类的成员。

    (3)在同一个项目中,internal的权限要大于protected, 而如果出了此项目那 protected的权限要大于internal, 因为internal的访问权限只能在当前项目中使用,出了这个项目那它就不行喽。。。

原文地址:https://www.cnblogs.com/zsongs/p/5071748.html