我有一个带有一些虚函数的基类
public class ABaseClass
{
public virtual void DoAThing()
{
print("print this base");
}
}
我还有另一个从基类继承的类,如下所示。
public class AChildClass : ABaseClass
{
public override void DoAThing()
{
print("child override");
base.DoAThing();
}
}
在运行时,我想实例化子类,同时还要包装/注入/覆盖它在基类中重写的方法,如下所述。我基本上想添加到DoAThing方法,以便在其他地方调用它时,它将执行我添加的额外代码。
...
//somewhere else I instantiate and override the method at runtime
AChildClass instance = new AChildClass()
{
DoAThing = new method()
{
// Do some extra stuff
print("print this also");
// do child class stuff and base stuff
print("child override")
base.DoAThing(); //print("print this base");
}
}
这可以在C#中完成吗?
汪汪一只猫
12345678_0001
相关分类