是否可以在抽象基类中构造派生类?

问题描述 投票:0回答:1

假设您具有以下三个类(我省略了实现):

abstract class BaseClass
class Derived1 : BaseClass
class Derived2 : BaseClass

现在,在BaseClass中,我想定义一个方法,该方法应该返回相同实例的新的,经过稍微修改的版本。但这是问题所在:我无法构造BaseClass,因为它是抽象的,而且由于我们位于BaseClass中,所以我不知道您正在使用哪个派生类。

我能想到的唯一解决方法是使其成为一种抽象方法,并使每个派生类都实现其自己的版本。但是,仅更改一个类名就需要很多重复的代码。有没有更好的方法可以做到这一点?

假设您有以下三个类(我省略了实现):抽象类BaseClass类Derived1:BaseClass类Derived2:BaseClass现在,在BaseClass中,我想定义一个...

c# inheritance abstract-class
1个回答
1
投票
如何使用泛型类型?
© www.soinside.com 2019 - 2024. All rights reserved.