Можно ли каким-то образом заставить производный класс всегда вызывать переопределенную базу методов?
public class BaseClass
{
public virtual void Update()
{
if(condition)
{
throw new Exception("..."); // Prevent derived method to be called
}
}
}
И затем в производном классе:
public override void Update()
{
base.Update(); // Forced call
// Do any work
}
Я искал и нашел предложение использовать не виртуальное обновление(), а также защищенный виртуальный UpdateEx(). Это просто не очень удобно, нет ли лучшего способа?
Надеюсь, у вас возник вопрос, и я сожалею о любом плохом английском.