在C#语言中,共有五种访问修饰符:public、private、protected、internal、protected internal。作用范围如下表: 访问修饰符 说明 public 公有访问。不受任何限制。 private 私有访问。只限于本类成员访问,子类,实例都不能访问。 protected 保护访问。只限于本类和子类访问,实例不能访问。 internal 内部访问。只限于本项目内访问,其他不能访问。 protected internal 内部保护访问。只限于本项目或是子类访问,其他不能访问. -------------------------------------------------------------------------------------------------------- (1) Pubilc :任何公有成员可以被外部的类访问。 (2) Private :只有同一个类中的函数可以访问它的私有成员。 (3) Protected :该类内部和继承类中可以访问。 (4) internal : 在同一命名空间内可以访问。 (5) Protected internal :3 和 4 的并集,符合任意一条都可以访问。 范围比较:private < internal/protected < protected internal < public -------------------------------------------------------------------------------------------------------- 举例说 一个人A为父类,他的儿子B,妻子C,私生子D(注:D不在他家里) 如果我们给A的事情增加修饰符: public事件,地球人都知道,全公开 protected事件,A,B,D知道(A和他的所有儿子知道,妻子C不知道) private事件,只有A知道(隐私?心事?) internal事件,A,B,C知道(A家里人都知道,私生子D不知道) protected internal事件,A,B,C,D都知道,其它人不知道 |
|