我有几个从BaseClass继承而来的类,它有一个名为GetData的抽象方法。在其中的一个中,我想基本继承并提供一个名为GetArticles的新方法,我从GetData调用。这是代码。从非抽象类继承
public abstract class BaseClass
{
internal abstract void GetData();
}
internal class FirstClass : BaseClass
{
internal override void GetData()
{
// calls GetArticles
}
protected void GetArticles()
{
}
}
internal class SecondClass : FirstClass
{
protected new void GetArticles()
{
}
}
GetArticles永远不会在SecondClass中调用。它调用FirstClass中的一个,即使我的对象是SecondClass类型。我无法在FirstClass Abstract中创建GetArticles,因为我想单独使用FirstClass。
有什么建议吗?
'new'不会覆盖方法。 –