C#访问权限修饰符
C#中类及类型成员修饰符有以下四类:public,private,protected,internal。
public 类及类型成员的修饰符
private 类型成员的修饰符
protected 类型成员的修饰符
internal 类及类型成员的修饰符
由以上四类说明,我们知道,可以放在class前面修饰类的修饰符关键字只有public和internal,如果没写任何关键字,默认是internal.
1.public class:任何地方该类都可以被访问到。
2.internal class:只有在同一程序集内,该类才可以被访问到。
而类型成员的修饰符可以是由这四个关键字形成的五种组合,他们分别是:public,protected,private,internal,protected internal.类型成员前如果没写任何关键字,默认为private。他们具体的访问权限,我们看下图就明白了。
需要注明的是:
- protected的权限和private的权限很相似,唯一不同的是protected类型成员可以被子类继承,而private类型成员不可以被继承。
- protected internal类型成员可以被理解成protected or internal 类型成员。不存在protected and internal类型成员。
以上部分转至http://www.cnblogs.com/RascallySnake/archive/2010/05/14/1735704.html。
根据以上图片,我们可以看出:
1. Private 只能在 本项目 中的 本类 中使用。
2. Internal 能在 本项目 中的 所有类 使用。
3. Public 能在 所有项目 中的 所有类 使用
4. Protected 能在 所有项目 中的 继承类 使用
5. Protected Internal 能在 本项目的所有类 或者 所有项目的继承类 使用。= Protected + Internal的访问权限。