Junior — Middle
Quais são as restrições ao usar um método com o mesmo nome na mesma classe em Java?
sobes.tech IA
Resposta da IA
Em Java, numa mesma classe, é possível ter vários métodos com o mesmo nome, desde que diferirem na assinatura — ou seja, na quantidade, tipos ou ordem dos parâmetros. Isto é chamado sobrecarga de métodos (method overloading).
Restrições:
- Os métodos devem diferir pelos parâmetros, caso contrário ocorrerá um erro de compilação.
- A sobrecarga não pode basear-se apenas na diferença de tipo de retorno.
- Não é permitido ter dois métodos com a mesma assinatura, mesmo que diferem nos modificadores de acesso.
Exemplo:
class Example {
void print(String s) { System.out.println(s); }
void print(int i) { System.out.println(i); }
// void print(String s) { } // Erro: assinatura duplicada
}