1
我有基类和执行虚拟方法。我重写派生类中的execute方法。 可以在这样的流程中执行虚拟方法代码吗?c#虚拟方法
- 虚拟基础方法的代码执行
- 重写方法的代码执行
- 虚拟基础方法的代码执行
不知道如果我已经解释了一切很好,但我希望能得到解释我的问题: )
public abstract class ConverterBase
{
public virtual void Execute()
{
try
{
//1. Base class code
// 2. Execute overridden method code.
}
finally
{
//3. Base class code
}
}
}
public class Converter : ConverterBase
{
public override void Execute()
{
//2. code
}
}
乔恩,这如何让派生类之前和派生功能后调用基类的方法?这不是OP要求的吗? – Jamiec
@Jon,你的代码有问题。 Converter.ExecuteImpl()永远不会击中ConverterBase.Execute(); – Tomas
@Tomas:这不是意味着 - 这个想法是公共调用者只是调用Execute,它将执行基类中的一些代码,然后是派生类中的一些代码,然后是基类中的最后一部分代码。这不是你想要的吗? –