Em uma aplicação Java, a anotação @Override na linha anterio...

Próximas questões
Com base no mesmo assunto
Q583594 Programação
Em uma aplicação Java, a anotação @Override na linha anterior à declaração do método indica que ele
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a D - está sendo sobrescrito.

Na linguagem de programação Java, o conceito de sobrescrita de métodos (em inglês, method overriding) é um recurso da orientação a objetos que permite que uma subclasse forneça uma implementação específica de um método que já é fornecido por uma de suas superclasses. O método sobrescrito na subclasse deve ter a mesma assinatura do método na superclasse.

Quando utilizamos a anotação @Override imediatamente acima da declaração de um método, estamos indicando ao compilador e a outros desenvolvedores que o método está intencionalmente sobrescrevendo um método da superclasse. O compilador verifica se realmente existe um método correspondente na superclasse para ser sobrescrito. Caso contrário, ele gerará um erro de compilação. Isso ajuda a evitar erros sutis que podem ocorrer quando se digitam incorretamente o nome do método ou os parâmetros.

As outras opções não se aplicam neste contexto:

  • A anotação @Override não é usada para indicar sobrecarga de métodos (method overloading), que é quando métodos têm o mesmo nome mas parâmetros diferentes na mesma classe.
  • Um método estático não pode ser sobrescrito, pois pertence à classe, não a uma instância da classe.
  • A anotação @Override não tem relação com métodos que fazem referência a outros métodos.
  • Um método abstrato em uma classe abstrata ou interface não é implementado, então não há necessidade de usar @Override quando você está apenas declarando o método abstrato. No entanto, quando você está fornecendo uma implementação para um método abstrato em uma subclasse concreta, aí sim, você pode usar @Override.

Portanto, @Override é uma indicação clara de que um método é uma sobrescrita de um método existente na hierarquia de classes, validando a resposta D.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

É sobrescrito e não é obrigatório, porém a sua utilização são consideradas boas práticas.

Um exemplo de @Override

@Override
    public String toString() {
        return "Pessoa [nome = " + this.nome + "]";
    }

Lembrar que sobrecarga é @overload

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo