[英]Can I derive a grandchild for a class in C#?
我想知道,C#是否支持孙子类。 我想做下一个:
class Base
{
}
class DerivedFromBase : Base
{
}
class Grandchild : DerivedFromBase //I recieve an error in this class
{
}
在Java中,我可能会这样做,但C#在Grandchild类中生成错误。 它只支持一个派生类吗?
不,请发布您的错误。 另请注意,您的基础已经从Object
派生,因此DerivedFromBase
是一个孙子。
C#支持(实际上)无限级别的派生。 如果您收到错误,则由其他原因引起。
它只支持一个派生类,但该类也可以是派生类。 就像在Java中一样。 你的问题在别处。
使用最少的代码准备一个可以重现您的情况的问题,并将其与编译器输出一起发布。
C#允许这样,所以应该没有错误。
我复制了你向我们展示的内容,添加了一些代码,并且它有效。 所以它必须是导致错误的其他东西。
点击这里,这有效:
using System;
public class Test
{
public static void Main()
{
Grandchild g = new Grandchild();
}
}
class Base
{
public int i=10;
}
class DerivedFromBase : Base
{
public DerivedFromBase()
{
Console.WriteLine(i);
}
}
class Grandchild : DerivedFromBase
{
public Grandchild()
{
Console.WriteLine(i);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.