We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

Overrides (Visual Basic)

Specifies that a property or procedure overrides an identically named property or procedure inherited from a base class.


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

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

  • Matching Signatures. The signature of this declaration must exactly match the signature of the property or procedure that it overrides. This means the parameter lists must have the same number of parameters, in the same order, with the same data types.

    In addition to the signature, the overriding declaration must also exactly match the following:

    • The access level

    • The return type, if any

  • Generic Signatures. For a generic procedure, the signature includes the number of type parameters. Therefore, the overriding declaration must match the base class version in that respect as well.

  • Additional Matching. In addition to matching the signature of the base class version, this declaration must also match it in the following respects:

  • Shadowing and Overriding. Both shadowing and overriding redefine an inherited element, but there are significant differences between the two approaches. For more information, see Shadowing in Visual Basic.

The Overrides modifier can be used in these contexts:

Function Statement

Property Statement

Sub Statement