Specifies that a property or procedure can be overridden by an identically named property or procedure in a derived class.


Overridable is the default setting for a property or procedure that overrides a base class property or procedure.

You can shadow or override to redefine an inherited element, but there are significant differences between the two approaches. For more information, see Shadowing in Visual Basic.

An element that can be overridden is sometimes referred to as a virtual element. If it can be overridden, but does not have to be, it is sometimes also called a concrete element.


  • Declaration Context. You can use Overridable only in a property or procedure declaration statement.

  • Combined Modifiers. You cannot specify Overridable together with MustOverride, NotOverridable, or Shared in the same declaration. Because an overriding element is implicitly overridable, you cannot combine Overridable with Overrides.

The Overridable modifier can be used in these contexts:

Function Statement (Visual Basic)

Property Statement

Sub Statement (Visual Basic)

See Also


Shadowing in Visual Basic





Visual Basic Language Keywords