首页 新闻 会员 周边

类中的类的意义是什么?

0
悬赏园豆:10 [已解决问题] 解决于 2013-04-23 08:07

例如有如下代码

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类?谢谢!

c#
飞鸟_Asuka的主页 飞鸟_Asuka | 菜鸟二级 | 园豆:209
提问于:2013-04-22 21:30
< >
分享
最佳答案
0

一般来说,嵌套类 class B 是 private的, 只有A 可以访问, 只能在A 中创建B的实例。 当你不希望B被外界看到和访问到时, 可以这样来实现。

收获园豆:10
gunsmoke | 老鸟四级 |园豆:3592 | 2013-04-23 06:48

讲得很清楚,谢谢!

飞鸟_Asuka | 园豆:209 (菜鸟二级) | 2013-04-23 08:08

那如果把B声明为public,A以外的类能访问吗

飞鸟_Asuka | 园豆:209 (菜鸟二级) | 2013-04-23 08:09

@飞鸟_Asuka: 当声明为public时, 其他类也可以访问。 

当B 是public时

A.B  ab = new A.B();

ab.GetName();   //B

但这样好像就没必要使用嵌套类了。

还有重要一点嵌套类B 可以直接访问 A的私有成员。

gunsmoke | 园豆:3592 (老鸟四级) | 2013-04-23 08:39

@gunsmoke: 明白了,多谢

飞鸟_Asuka | 园豆:209 (菜鸟二级) | 2013-04-24 17:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册