Модификаторы переопределения
Обновлен: Ноябрь 2007
Можно использовать модификаторы NotOverridable и MustOverride в базовом классе, чтобы управлять тем, как производные классы переопределяют его свойства и методы.
Модификатор NotOverridable определяет метод базового класса, который не может быть переопределен в производных классах. Все методы имеют модификатор NotOverridable, если они не помечены модификатором Overridable. Можно использовать модификатор NotOverridable, если не нужно, чтобы переопределенный метод был снова переопределен в производном классе.
Методы, определенные модификатором MustOverride, не имеют реализации в базовом классе и должны реализовываться в производных классах. Классы, содержащие методы MustOverride, должны быть помечены модификатором MustInherit.
Пример
MustInherit Class BaseClass
Public MustOverride Sub aProcedure()
End Class
Class DerivedClass
Inherits BaseClass
Public NotOverridable Overrides Sub aProcedure()
' Override a procedure inherited from the base class
' and mark it with the NotOverridable modifier so that
' it cannot be overridden in classes derived from this class.
End Sub
End Class