Compartilhar via


Sobrecargas

Especifica que a propriedade ou procedimento declara novamente uma ou mais propriedades ou procedimentos existentes com o mesmo nome.

Comentários

Sobrecarregar é a prática de fornecer mais de uma definição para um mesmo nome de dada propriedade ou procedimento no mesmo escopo.Declarar novamente um propriedade ou procedimento com uma diferente assinatura é usualmente chamado de ocultamento por assinatura.

Regras

  • Contexto da Declaração. Você pode usar Overloads somente na declaração de uma propriedade ou procedimento.

  • Modificadores Combinados. Você não pode especificarOverloads junto com Sombras na mesma declaração de procedimento.

  • Diferenças Requeridas. A assinatura nessa declaração deve ser diferente da assinatura de toda propriedade ou procedimento que ela sobrecarrega.A assinatura consiste no nome da propriedade ou procedimento em conjunto com o seguinte:

    • o número de parâmetros

    • a ordem dos parâmetros

    • o tipo de dado dos parâmetros

    • o número de parâmetros do tipo (para um procedimento genérico)

    • o tipo de retorno (somente para um procedimento de operador de conversão)

    Todas as sobrecargas devem ter o mesmo nome, mas cada uma deve diferir de todas as outras em uma ou mais dentre as condições citadas.Isto permite ao compilador distinguir qual versão utilizar quando o código chama a propriedade ou procedimento.

  • Diferenças não Permitidas Modificar um ou mais dos itens abaixo não é válido para sobrecarga de propriedade ou procedimento, porque eles não fazem parte da assinatura:

    • o fato de retornar ou não um valor (para um procedimento)

    • o tipo de dado do valor de retorno (exceto para um operador de conversão)

    • os nomes dos parâmetros ou parâmetros do tipo

    • as restrições nos parâmetros do tipo (para um procedimento genérico)

    • palavras-chave modificadoras de parâmetros (como ByRef ou Optional)

    • palavras-chave modificadoras de propriedades ou procedimentos (como Public ou Shared)

  • Modificadores Opcionais. Você não precisa usar o modificador Overloads quando estiver definindo múltiplas propriedades ou procedimentos sobrecarregados em uma mesma classe.Entretanto, se você usar Overloads em uma das declarações, você deve usar em todas elas.

  • **Sombreamento e Sobrecarga.**Overloads também pode ser usada para sombrear um membro existente, ou conjunto de membros sobrecarregados, em uma classe base.Quando você usa Overloads desse jeito, você declara a propriedade ou método com o mesmo nome e a mesma lista de parâmetros que o membro da classe base, e você não fornece a palavra-chave Shadows.

O modificador Overloads pode ser utilizado nestes contextos:

Instrução função

Declaração Operator

Propriedade declaração

Instrução Sub

Consulte também

Tarefas

Como: Define a Conversion operador

Conceitos

Sobrecarga de procedimento

Tipos genéricos no Visual Basic

Procedimentos de Operador

Referência

Sombras