Sobrecarga de Métodos
Parte da seção Fundamentos do Journey de Java da Coddy. Lição 54 de 73.
Em Java, a sobrecarga de métodos permite definir vários métodos com o mesmo nome, mas com parâmetros diferentes. Isso significa que você pode ter vários métodos que desempenham uma função semelhante, mas operam em diferentes tipos de dados ou em uma quantidade diferente de argumentos.
A chave é que cada método sobrecarregado deve ter uma assinatura de método exclusiva. A assinatura do método é determinada pelo nome do método e pelo tipo e pela ordem de seus parâmetros.
Estas são as principais regras para sobrecarga de métodos:
- Mesmo nome: Todos os métodos sobrecarregados devem ter o mesmo nome.
- Parâmetros diferentes: Cada versão do método deve ter um número diferente de parâmetros, tipos diferentes de parâmetros ou ambos.
- O tipo de retorno não é suficiente: métodos sobrecarregados não podem diferir apenas pelo tipo de retorno. Eles devem ter listas de parâmetros diferentes.
Aqui está um exemplo para ilustrar a sobrecarga de métodos:
public class MathUtils {
public static int add(int a, int b) {
return a + b;
}
public static double add(double a, double b) {
return a + b;
}
public static int add(int a, int b, int c) {
return a + b + c;
}
}Neste exemplo, temos três métodos chamados add. O primeiro adiciona dois números inteiros, o segundo adiciona dois números de ponto flutuante e o terceiro adiciona três números inteiros.
Java determina qual método chamar com base nos argumentos passados durante a chamada do método.
A sobrecarga de métodos torna o código mais legível e reutilizável. Em vez de criar nomes diferentes para métodos que realizam tarefas semelhantes (por exemplo, addInts, addDoubles, addThreeInts), você pode usar um único nome, add, e deixar que o compilador escolha o método apropriado com base no contexto.
Lembre-se: a sobrecarga exige tipos ou quantidades diferentes de parâmetros, não apenas nomes de parâmetros ou tipos de retorno diferentes.
Experimente você mesmo
Esta lição não inclui um desafio de código.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores - Parte 1
Operadores aritméticosOperador móduloIncremento/DecrementoPós-incremento/Pós-decrementoAtalhos aritméticosOperadores de comparaçãoComparação de strings7IO Básico
Métodos System.outFormatação da saídaClasse ScannerRevisão - Até 120Revisão - Verdadeiro ou falso10Métodos (Funções)
Declarando MétodosParâmetros de MétodosTipos de RetornoSobrecarga de MétodosRecapitulação - Função SigmaRecapitulação - Função de ValidaçãoMétodos Void5Operadores — Parte 2
Operadores lógicos — Parte 1Operadores lógicos — Parte 2Revisão — Lógica simplesOperadores lógicos — Parte 3Operadores lógicos — Parte 43Variáveis — Parte 2
ConstantesConvenções de nomenclaturaRecapitulação — Inicializar variáveisConversão de tipos — Parte 1Conversão de tipos — Parte 26Tomada de Decisão
Instrução IfIf - ElseInstrução SwitchOperador TernárioRevisão - If ElseIf - Else AninhadoPratique por conta própria: Compilador de Java online