Menu
Coddy logo textTech

Method Overloading

Parte da seção Fundamentos do Journey de Java da Coddy — lição 54 de 73.

Em Java, sobrecarga de métodos permite que você defina múltiplos métodos com o mesmo nome, mas com parâmetros diferentes. Isso significa que você pode ter vários métodos que executam uma função similar, mas operam em diferentes tipos de dados ou em um número diferente de argumentos.

A chave é que cada método sobrecarregado deve ter uma assinatura de método única. A assinatura do método é determinada pelo nome do método e pelo tipo e ordem de seus parâmetros.

Aqui estão as regras principais para sobrecarga de métodos:

  1. Mesmo Nome: Todos os métodos sobrecarregados devem ter o mesmo nome.
  2. 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.
  1. 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 inteiros, o segundo adiciona dois doubles, e o terceiro adiciona três inteiros.

O 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 executam tarefas semelhantes (p. ex., addInts, addDoubles, addThreeInts), você pode usar um único nome, add, e deixar o compilador escolher o método apropriado com base no contexto.

Lembre-se: a sobrecarga requer tipos ou números de parâmetros diferentes, não apenas nomes de parâmetros diferentes ou tipos de retorno.

Folha de consulta

Sobrecarga de métodos permite múltiplos métodos com o mesmo nome, mas parâmetros diferentes:

Regras para sobrecarga de métodos:

  • Mesmo nome de método
  • Parâmetros diferentes (número, tipo ou ordem)
  • Tipo de retorno sozinho não é suficiente para sobrecarga
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;
    }
}

Java determina qual método chamar com base nos argumentos passados durante a chamada do método.

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

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