我知道将一个类嵌套在另一个类中不是一个好习惯,但是跟随只是为了好玩。
我有以下代码
namespace PlayIt
{
class Class1
{
class Class2 : Class1
{
}
}
class SomeOtherClass
{
Class1 objClass1 = new Class1();
Class2 objClass2 = new Class2();
}
}
我可以创建class1的对象,但不能创建class2的对象,为什么呢?有什么办法可以在class1之外访问class2
我可以创建class1的对象,但不能创建class2的对象,为什么呢?
两个原因:
首先,它Class1
是隐式内部的,而Class2
隐式是私有的(因为它是嵌套的)。
其次,您试图仅Class2
在没有意义的范围内使用-您需要对其进行限定。这将正常工作:
namespace PlayIt
{
class Class1
{
internal class Class2 : Class1
{
}
}
class SomeOtherClass
{
Class1 objClass1 = new Class1();
Class1.Class2 objClass2 = new Class1.Class2();
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句