public 可以被外部成员调用 private 只能在被类的成员调用 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都知道,其它人不知道
另外: 貌似protected,internal,protected internal只能修饰嵌套类(nested class),下面代码编译错误: protected class C 微软官方解释:不嵌套在其他类型中的顶级类型的可访问性只能是 internal 或 public。这些类型的默认可访问性是 internal。
Tips: 1,命名空间上不允许使用访问修饰符。命名空间没有访问限制。
最后注意: 1,assembly中的class默认访问修饰符为internal 2,类中的字段默认为private 3,类中的方法默认为private,包括构造函数
原文地址:http://hi.baidu.com/%B3%AC%C8%CBxbaby/blog/item/7ef16422109f264dad34de10.html |
|