Sobrecargas (Visual Basic)
Especifica que uma propriedade ou procedimento rededeclara uma ou mais propriedades ou procedimentos existentes com o mesmo nome.
Observações
Sobrecarga é a prática de fornecer mais de uma definição para uma determinada propriedade ou nome de procedimento no mesmo escopo. A redeclaração de uma propriedade ou procedimento com uma assinatura diferente às vezes é chamada de ocultação por assinatura.
Regras
Contexto da Declaração. Você pode usar
Overloads
somente em uma instrução de declaração de propriedade ou procedimento.Modificadores combinados. Não é possível especificar
Overloads
juntamente com Shadows na mesma declaração de procedimento.diferenças necessárias. A assinatura nesta declaração deve ser diferente da assinatura de todos os bens ou procedimentos que sobrecarrega. A assinatura inclui o nome da propriedade ou do procedimento, juntamente com o seguinte:
o número de parâmetros
a ordem dos parâmetros
os tipos de dados dos parâmetros
o número de parâmetros de tipo (para um procedimento genérico)
o tipo de retorno (apenas 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 um ou mais dos aspetos anteriores. Isso permite que o compilador distinga qual versão usar quando o código chama a propriedade ou o procedimento.
Diferenças não permitidas. Alterar um ou mais dos seguintes itens não é válido para sobrecarregar uma propriedade ou procedimento, porque eles não fazem parte da assinatura:
se devolve ou não um valor (para um procedimento)
o tipo de dados do valor de retorno (exceto para um operador de conversão)
os nomes dos parâmetros ou parâmetros de tipo
as restrições relativas aos parâmetros de tipo (para um procedimento genérico)
palavras-chave modificadoras de parâmetros (como
ByRef
ouOptional
)palavras-chave modificadoras de propriedade ou procedimento (como
Public
ouShared
)
Modificador opcional. Não é necessário usar o
Overloads
modificador quando estiver definindo várias propriedades ou procedimentos sobrecarregados na mesma classe. No entanto, se você usarOverloads
em uma das declarações, você deve usá-lo em todas elas.Sombreamento e sobrecarga.
Overloads
também pode ser usado para sombrear um membro existente, ou conjunto de membros sobrecarregados, em uma classe base. Quando você usaOverloads
dessa maneira, 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 não fornece aShadows
palavra-chave.
Se você usar Overrides
o , o compilador adiciona Overloads
implicitamente para que as APIs da sua biblioteca funcionem com C# mais facilmente.
O Overloads
modificador pode ser usado nestes contextos: