【发布时间】:2010-03-05 22:07:36
【问题描述】:
这更容易用一个例子来解释。鉴于这两个类:
public class MyClassA
{
public String Property_A { get; set; }
public String Property_B { get; set; }
public String Property_C { get; set; }
public String Property_D { get; set; }
...
public String Property_Y { get; set; }
}
public class MyClassB: MyClassA
{
public String Property_Z { get; set; }
}
假设我已经完全创建了 MyClassA 的实例(填充了 A - Y 的所有属性)。然后我需要创建一个 MyClassB 的实例,它与我的 MyClassA 实例完全相同,但填充了 Property_Z(当然是自定义值)。我该怎么做?
这样做不起作用(抛出和无效的强制转换异常):
MyClassB myInstanceB = (myClassB) myInstanceA;
myInstance.Property_Z = myCustomValue;
自从我的 C++ 时代以来,我就不需要做这样的事情了,我被难住了。
有什么想法吗?
更新:我找到了解决我如何创建实例的问题的方法。它在下面。我没有将其标记为答案,因为它不完全符合我的问题。
【问题讨论】:
标签: c# .net-3.5 inheritance