Qual é a sobrecarga do método?

O sobrecarga do método é um recurso na maioria das linguagens de programação orientadas a objetos, nas quais dois ou mais métodos compartilham o mesmo nome, mas têm parâmetros diferentes. Especificamente, o número, o tipo de dados e/ou a ordem dos parâmetros são diferentes. Quando o código é compilado, o método correto será selecionado automaticamente com base em como é chamado. Os métodos também são conhecidos como funções em algumas linguagens de programação; portanto, a sobrecarga de métodos às vezes é referida como sobrecarga de função.

Um exemplo simples de sobrecarga de método seria um método que calcula a área de um quadrado. Pode ser definido como Getarea (Square S). Esse método pode ser sobrecarregado para calcular adicionalmente a área do círculo adicionando o método getArea (círculo c).

O requisito principal de sobrecarga de métodos é que os métodos compartilham o mesmo nome. Suas assinaturas de método - o nome do método, o número de parâmetros e os tipos de dados de parâmetros - de outra forma devem ser únicos. Dessa forma, thE o compilador pode determinar qual método a ser executado.

Construtores, os métodos usados ​​para instanciar objetos, geralmente são sobrecarregados. Isso é feito para inicializar um objeto com valores não-defensores. Por exemplo, um objeto de funcionário com dois campos (nome e data de nascimento, ou DOB) pode ter os seguintes construtores sobrecarregados: funcionário (), funcionário (nome) e funcionário (nome, DOB). O primeiro construtor cria um objeto de funcionário com nome em branco e campos DOB. O segundo define o campo de nome, mas deixa o campo DOB ​​em branco e o terceiro define o nome e os campos DOB.

O sobrecarga do método é feito com mais frequência para fazer com que mais de um método apareça logicamente como um único método. No exemplo getarea (), embora existam fisicamente dois métodos, o chamador é apresentado com um único método getarea () lógico. Dessa forma, getarea () pode ser expandido para trabalhar em outras formas - triângulos, trapézios, umND SO ON - enquanto ainda se apresenta logicamente como um único método.

Os métodos

também estão sobrecarregados para preservar a compatibilidade com versões anteriores. Um método que faz um cálculo complexo pode receber um novo requisito para executar opcionalmente o mesmo cálculo com uma ligeira alteração. Um novo parâmetro é adicionado ao método que determinará como executar o cálculo - a maneira antiga ou a nova maneira.

Para evitar encontrar todos os casos em que o método é chamado e adicionar o novo parâmetro, o método pode ser sobrecarregado. O novo método terá a assinatura antiga e será chamada pelo código existente. Ele não conterá nenhuma lógica e simplesmente chamará o método modificado e passará como inadimplente de "maneira antiga" para o novo parâmetro. O novo código chamará o método modificado e passará no novo parâmetro com o valor apropriado, o caminho antigo ou o novo caminho.

O sobrecarga do método é um tipo de polimorfismo, no qual o mesmo método lógico pode ser, na prática, usado de várias maneiras. MeuA sobrecarga Thod não é a mesma que a substituição do método. A substituição do método é onde a definição de um método na classe pai é alterada por uma classe infantil. Nesse caso, ambos os métodos terão a mesma assinatura.

OUTRAS LÍNGUAS

Este artigo foi útil? Obrigado pelo feedback Obrigado pelo feedback

Como podemos ajudar? Como podemos ajudar?