Как предотвратить переопределение метода в производном классе?
В Java я мог бы сделать это, используя модификатор final
для метода, который я хочу предотвратить переопределением.
Как добиться того же результата в С#?
Я знаю использование sealed
, но, видимо, я могу использовать его только с ключевым словом override
?
class A
{
public void methodA()
{
// Code.
}
public virtual void methodB()
{
// Code.
}
}
class B : A
{
sealed override public void methodB()
{
// Code.
}
}
Итак, в приведенном выше примере я могу предотвратить переопределение methodB()
любыми классами, происходящими из класса B
, но как я могу предотвратить класс B
от переопределения methodB()
в первую очередь?
Обновление. Я пропустил ключевое слово virtual
в объявлении methodB()
в классе A, когда я разместил этот вопрос. Исправлено.