Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

sobrecarga

Olá não conseguir entender muito bem sobre SOBRECARGA alguém por gentileza poderia me dar um luz

2 respostas
solução!

Oi Gilmar,

Imagine que você tenha a seguinte classe em seu projeto:

public class Calculadora {

    public int somar(int valor1, int valor2) {
        return valor1 + valor2;
    }

    public int somar(String valor1, String valor2) {
        return Integer.parseInt(valor1) + Integer.parseInt(valor2);
    }
}

No exemplo anterior a classe Calculadora tem dois métodos com o mesmo nome, chamado somar.

Isso seria um problema para o Java, pois ele poderia considerar que a classe tem um método "duplicado". Mas na verdade eles não são duplicados, pois não são exatamente iguais, já que o primeiro recebe dois int's como parâmetro e o segundo recebe duas String's.

Desse jeito não tem problemas, pois o Java sabe qual dois métodos chamar, baseado nos parâmetros que foram passados. Exemplo:

public class Main {
    public static void main(String[] args) {
        Calculadora calc = new Calculadora();
        cal.somar(10, 30);
    }
}

Aqui o Java sabe que deve chamar o primeiro método somar, pois foi passado como parâmetro os valores 10 e 30, que são do tipo inteiro.

Se alterarmos o código para:

cal.somar("10", "30");

Ele saberá que agora deve chamar o segundo método, pois foram passadas duas String's como parâmetro.

Sendo assim, é possível ter na mesma classe dois ou mais métodos com a mesma "assinatura", ou seja, mesmo nome e tipo de retorno, desde que eles tenham parâmetros distintos, para que assim o Java saiba quando chamar cada um deles.

E justamente isso que chamamos de Sobrecarga.

Ficou mais claro?

Bons estudos!

Valeu amigo Obrigado Com certeza ficou mais claro sim