A sobrecarga de mĂ©todos (Method Overloading) Ă© um recurso da Programação Orientada a Objetos que permite criar mĂșltiplas versĂ”es do mesmo mĂ©todo dentro da mesma classe, desde que tenham assinaturas diferentes.
Isso deixa o cĂłdigo mais flexĂvel, expressivo e fiel ao mundo real, onde uma mesma ação pode acontecer de muitas formas diferentes â como um ninja realizando um jutsu! đ„·âĄ
à quando dois ou mais métodos possuem:
đ O Java escolhe automaticamente qual mĂ©todo chamar, com base nos parĂąmetros fornecidos.
Apenas os parĂąmetros contam para sobrecarga.
public abstract class Ninja implements EstrategiaDeBatalha {
String nome;
String aldeia;
int idade;
int numeroDeMissoesConcluidas;
NivelNinja rank;
// đč VersĂŁo padrĂŁo
public void inteligenciaDeCombate() {
System.out.println("Meu nome Ă©: " + nome + " e essa Ă© minha inteligĂȘncia de combate!");
}
// đč Sobrecarga recebendo o QI
public void inteligenciaDeCombate(int qi) {
if (qi > 150) {
System.out.println("QI: " + qi + " †VocĂȘ Ă© um gĂȘnio! đ§ đĄ");
} else if (qi >= 130) {
System.out.println("QI: " + qi + " †Ninja promissor! đȘ");
} else {
System.out.println("QI: " + qi + " †Treine mais suas estratĂ©gias. đ„Č");
}
}
}
realizarJutsu()