Object Class的受保护方法MemberWiseClone()

时间:2010-05-26 15:28:31

标签: c# clone protected

这可能是一个愚蠢的问题,但我不明白:

我有一个名为Card的课程。我想使用MemberWiseClone()进行浅层克隆。 理论卡继承自Object。所以它应该能够使用MemberWiseClone(),即使MWC()受到保护??

我遗失/遗忘了什么吗?

2 个答案:

答案 0 :(得分:5)

卡可以使用它。

class Card
{
   public Card Clone()
   {
      return (Card)MemberwiseClone();
   }
}

答案 1 :(得分:3)

您只能在代码所在的类的(编译时)类型的对象上调用受保护的方法。

因此,任何特定的类只能在该类的实例上调用MemberwiseClone 由于您的课程不是Card(并且未继承Card),因此您无法在MemberwiseClone个实例上致电Card