Допустим, у меня есть 3 класса:
Дед, папа и сын. Сын наследует от папы, который наследует от дедушки.
GrandDad имеет 2 метода:
public virtual void foo();
public virtual void do();
Папа наследует foo (), но переопределяет do ();
public override void do();
Если Сын хочет изменить foo (), допустимо ли:
заставить папу переопределить foo (), но просто вызвать foo.base ()? Тогда Сын может переопределить foo (), но функциональность папы foo () остается прежней?
Или это хакерский путь?