【发布时间】:2010-07-07 08:13:41
【问题描述】:
有一点我不太明白:调用虚方法的时候,也调用了基方法?
因为当我使用公共覆盖 WinForm OnPaint 方法时,在其主体中调用 base.OnPaint(e)。我不明白,我认为虚拟方法会覆盖原始方法。 如果通常不调用它,为什么在这种情况下调用它?谢谢
【问题讨论】:
-
如果您确实希望确保基方法被覆盖调用,请参阅stackoverflow.com/questions/2872137/… 或“模板方法”en.wikipedia.org/wiki/Template_method_pattern 或“非虚拟接口”en.csharp-online.net/CSharp_Canonical_Forms%E2%80%94NVI_Pattern 模式
标签: c# virtual-functions