Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Observação
Esse conteúdo é reimpresso por permissão da Pearson Education, Inc. das Diretrizes de Design da Estrutura: Convenções, Idiomas e Padrões para Bibliotecas .NET Reutilizáveis, 2ª Edição. Essa edição foi publicada em 2008, e desde então o livro foi totalmente revisado na terceira edição. Algumas das informações nesta página podem estar desatualizadas.
Sobrecarga de membro significa criar dois ou mais membros no mesmo tipo que diferem apenas no número ou tipo de parâmetros, mas têm o mesmo nome. Por exemplo, no seguinte, o WriteLine método é sobrecarregado:
public static class Console {
public void WriteLine();
public void WriteLine(string value);
public void WriteLine(bool value);
...
}
Como somente métodos, construtores e propriedades indexadas podem ter parâmetros, somente esses membros podem ser sobrecarregados.
A sobrecarga é uma das técnicas mais importantes para melhorar a usabilidade, a produtividade e a legibilidade das bibliotecas reutilizáveis. A sobrecarga no número de parâmetros possibilita fornecer versões mais simples de construtores e métodos. A sobrecarga no tipo de parâmetro possibilita usar o mesmo nome de membro para membros que executam operações idênticas em um conjunto selecionado de tipos diferentes.
✔️ TENTE usar nomes de parâmetro descritivos para indicar o padrão usado por sobrecargas mais curtas.
❌ EVITE variar arbitrariamente nomes de parâmetro em sobrecargas. Se um parâmetro em uma sobrecarga representar a mesma entrada que um parâmetro em outra sobrecarga, os parâmetros deverão ter o mesmo nome.
❌ EVITE ser inconsistente na ordenação dos parâmetros em membros sobrecarregados. Parâmetros com o mesmo nome devem aparecer na mesma posição em todas as sobrecargas.
✔️ FAÇA apenas a sobrecarga mais longa virtual (se a extensibilidade for necessária). Sobrecargas mais curtas devem simplesmente chamar uma sobrecarga mais longa.
❌ NÃO use os modificadores ref ou out para sobrecarregar membros.
Algumas linguagens não podem resolver chamadas para sobrecargas como esta. Além disso, essas sobrecargas geralmente têm semântica completamente diferente e provavelmente não devem ser sobrecargas, mas dois métodos separados.
❌ NÃO tenha sobrecargas com parâmetros na mesma posição e tipos semelhantes ainda com semântica diferente.
✔️ Certifique-se de permitir que null seja passado para argumentos opcionais.
✔️ USE sobrecarga de membro em vez de definir membros com argumentos padrão.
Os argumentos padrão não são compatíveis com CLS.
Partes © 2005, 2009 Microsoft Corporation. Todos os direitos reservados.
Reimpresso por permissão da Pearson Education, Inc. de Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition de Krzysztof Cwalina e Brad Abrams, publicado em 22 de outubro de 2008 pela Addison-Wesley Professional como parte da série Microsoft Windows Development Series.