如何理解 “私有成员只有在声明它们的类和结构体中才是可访问的” ?
通常私有成员(private)只有在声明它们的类和结构体中才是可访问的,如下类:
1 class A
2 {
3 private int i;
4 }
只有在A的内部在能访问i,这是众所周知的。
再看下面的类:
1 class B
2 {
3 private int i;
4 void DoSomeThing()
5 {
6 B b = new B();
7 int c = b.i; //这里在b的外部也能访问其私有成员i
8 }
9 }
不要惊讶,查查MSDN,http://msdn.microsoft.com/zh-cn/library/st6sy9xe.aspx ,其中就有 同一体中的嵌套类型也可以访问那些私有成员。