[英]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.