例如有如下代码
class A { string name; public A() { name = "A"; } public string GetName() { return this.name; } class B { string name; public B() { name = "B"; } public string GetName() { return this.name; } } }
在这种代码中,A和B的关系是什么?这个A类中的B类的含义究竟是什么?能否举几个例子说明一下如何使用B类?谢谢!
一般来说,嵌套类 class B 是 private的, 只有A 可以访问, 只能在A 中创建B的实例。 当你不希望B被外界看到和访问到时, 可以这样来实现。
讲得很清楚,谢谢!
那如果把B声明为public,A以外的类能访问吗
@飞鸟_Asuka: 当声明为public时, 其他类也可以访问。
当B 是public时
A.B ab = new A.B();
ab.GetName(); //B
但这样好像就没必要使用嵌套类了。
还有重要一点嵌套类B 可以直接访问 A的私有成员。
@gunsmoke: 明白了,多谢