Considere as alternativas a seguir sobre polimorfismo e identifique a afirmação correta:
Questão
Considere as alternativas a seguir sobre polimorfismo e identifique a afirmação correta:
Alternativas
a) O polimorfismo ocorre quando um objeto que já foi definido no ancestral é redefinido no descendente com um comportamento diferente.
b) O polimorfismo ocorre quando um método que já foi definido no ancestral é redefinido no descendente com um comportamento diferente.
c) O polimorfismo ocorre quando um atributo que já foi definido no ancestral é redefinido no descendente com o mesmo comportamento.
d) O polimorfismo ocorre quando um método que já foi definido no ancestral é redefinido no descendente com o mesmo comportamento.
Explicação
-
Em Programação Orientada a Objetos, polimorfismo é a capacidade de tratar objetos de classes diferentes (normalmente relacionadas por herança/interface) de forma uniforme, fazendo com que a chamada a um mesmo método resulte em comportamentos diferentes conforme o tipo real do objeto.
-
Um caso clássico de polimorfismo é o polimorfismo por sobrescrita (override): a classe descendente redefine um método herdado da classe ancestral, alterando sua implementação. Assim, ao invocar esse método por uma referência do tipo ancestral, o método executado depende do objeto concreto (despacho dinâmico).
-
Analisando as alternativas:
- a) Fala em “objeto” redefinido no descendente — conceitualmente incorreto (não se redefine “objeto” por herança; redefine-se/declara-se membros como métodos/atributos).
- b) Descreve exatamente a sobrescrita de método com comportamento diferente — isso caracteriza o polimorfismo (via override).
- c) Trata de atributo e ainda “mesmo comportamento” — não caracteriza polimorfismo.
- d) Redefinir método com “mesmo comportamento” não faz sentido como característica de polimorfismo; o ponto é justamente variar o comportamento.
Alternativa correta: b.