Overloads (Visual Basic)

Especifica que una propiedad o procedimiento vuelve a declarar una o varias propiedades o procedimientos existentes con el mismo nombre.

Comentarios

Sobrecarga es la práctica de procesador más de una definición para un nombre de propiedad o procedimiento dado en el mismo ámbito. Volver a declarar una propiedad o un procedimiento con otra firma a veces se denomina ocultar mediante signatura.

Reglas

  • Contexto de declaración. Overloads solo se puede usar en instrucciones de declaración de procedimiento o propiedad.

  • Modificadores combinados. Overloads no se puede especificar junto con Shadows en la misma declaración de procedimiento.

  • Diferencias requeridas. La firma de esta declaración debe ser diferente de las propiedades o los procedimientos que sobrecarga. La firma incluye el nombre de propiedad o procedimiento más lo siguiente:

    • el número de parámetros

    • el orden de los parámetros

    • los tipos de datos de los parámetros

    • el número de parámetros de tipo (para un procedimiento genérico)

    • el tipo de valor devuelto (solo para un procedimiento de operador de conversión)

    Todas las sobrecargas deben tener el mismo nombre, pero cada una debe diferir de todas las demás en uno o varios de los aspectos anteriores. Esto permite al compilador distinguir qué versión debe utilizar cuando el código llama a la propiedad o el procedimiento.

  • Diferencias no permitidas. El cambio de uno o varios de los siguientes aspectos no es válido para sobrecargar una propiedad o un procedimiento, porque no forman parte de la firma:

    • si devuelve o no un valor (para un procedimiento)

    • el tipo de datos del valor devuelto (excepto para un operador de conversión)

    • los nombres de los parámetros o parámetros de tipo

    • las restricciones en los parámetros de tipo (para un procedimiento genérico)

    • palabras clave de modificador de parámetro (como ByRef o Optional)

    • palabras clave de modificador de propiedad o procedimiento (como Public o Shared)

  • Modificador opcional. No es preciso usar el modificador Overloads cuando se definen varias propiedades o procedimientos sobrecargados en la misma clase. Sin embargo, si utiliza Overloads en una de las declaraciones, debe utilizarlo en todas ellas.

  • Sombreado y sobrecarga. Overloads también puede utilizarse para sombrear un miembro existente o un conjunto de miembros sobrecargados en una clase base. Al utilizar Overloads de esta forma, declara la propiedad o el método con el mismo nombre y la misma lista de parámetros que el miembro de clase base y no proporciona la palabra clave Shadows.

Si usa Overrides, el compilador agrega de forma implícita Overloads para que las API de la biblioteca trabajen más fácilmente con C#.

El modificador Overloads se puede utilizar en los contextos siguientes:

Consulte también