Selecione a alternativa que descreve corretamente como o pol...

Próximas questões
Com base no mesmo assunto
Q3699138 Programação
Selecione a alternativa que descreve corretamente como o polimorfismo é aplicado em Java.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: B

Fundamento decisivo: O decisivo era identificar a aplicação do polimorfismo por subtipagem em Java, em que uma referência de tipo mais geral pode apontar para um objeto de tipo derivado.

Tema central: Polimorfismo em Java
Análise das alternativas
A
Errada
Está errada porque descreve sobrecarga de métodos: mesmo nome com parâmetros diferentes. Segundo o recorte adotado pelo gabarito oficial, esse não é o sentido de polimorfismo cobrado na questão.
B
Certa
A alternativa B está correta porque descreve o uso de uma referência de superclasse ou interface para referenciar um objeto de subclasse, que é a forma clássica de polimorfismo por subtipagem em Java.
C
Errada
Está errada porque métodos estáticos não participam de despacho dinâmico em tempo de execução como ocorre com métodos de instância sobrescritos. Portanto, isso não descreve polimorfismo em Java.
D
Errada
Está errada porque a afirmação é incompatível com a linguagem: Java não admite múltiplas classes base para uma única classe derivada. A classe pode implementar múltiplas interfaces, mas não herdar de múltiplas classes.
E
Errada
Está errada porque confunde polimorfismo com mudança de tipo de dados em tempo de execução. Isso não corresponde ao conceito de polimorfismo em Java.
Pegadinha da questão
A confusão real era trocar polimorfismo por subtipagem pela ideia de sobrecarga de métodos, além de associar polimorfismo a qualquer comportamento dinâmico.
Dica para questões semelhantes
  • Se a alternativa falar em referência de supertipo apontando para objeto de subtipo, ela está no núcleo do polimorfismo cobrado em Java.
  • Se a descrição envolver mesmo nome com parâmetros diferentes, o conceito é sobrecarga, não o polimorfismo por substituição adotado aqui.
  • Em Java, descarte afirmações sobre herança múltipla de classes, porque a linguagem não permite isso.
  • Para polimorfismo em Java, pense em métodos de instância sobrescritos; não em métodos estáticos.

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

Gabarito: B) Permitindo que uma referência de classe base aponte para um objeto de classe derivada.

Resumo do Resumo:

O polimorfismo em Java permite que uma variável do tipo da classe base referencie um objeto de qualquer subclasse. Isso viabiliza a chamada de métodos sobrescritos (override) da subclasse em tempo de execução, mesmo através de uma referência do tipo da superclasse.

As outras alternativas estão incorretas:

A → Refere-se à sobrecarga de métodos, não ao polimorfismo de subtipo.

C → Métodos estáticos não participam de polimorfismo de tempo de execução; são resolvidos em tempo de compilação.

D → Java não suporta herança múltipla de classes (apenas de interfaces).

E → A tipagem em Java é estática; tipos são definidos em tempo de compilação.

Clique para visualizar este comentário

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