【发布时间】:2016-01-27 07:18:56
【问题描述】:
我查看了 How can I create an instance of a derived class from an instance of a base class and include private fields? 和 Create an instance of derived class from the base class,但要么我没有得到它,要么它们不是我想要的。
我有一个类,派生自另一个类,也实现了一个特定的接口:
public class DerivedClass : BaseClass, IDerivedClass
BaseClass 实现 IBaseClass 和 IDerivedClass 继承 IBaseClass。
有时,当我已经有了基类的实例时,我希望能够初始化派生类。我可以创建一个构造函数,将基实例中的每个属性简单地复制到派生类实例的属性中,但是还有其他方法吗?大致如下:
BaseClass bc = new BaseClass();
DerivedClass dc = new DerivedClass() : bc;
这是可行的吗?如果不是,为什么不呢?我准备接受这可能是不可能的,但如果是这样,如果有人能解释原因,我会非常感兴趣。
【问题讨论】:
标签: c# inheritance