Dúvida questão

Given: 10. interface A { public int getValue() } 11. class B implements A { 12. public int getValue() { return 1; } 13. } 14. class C extends B { 15. // insert code here 16. } Which three code fragments, inserted individually at line 15, make use of polymorphism? (Choose three.) A. public void add(C c) { c.getValue(); } B. public void add(B b) { b.getValue(); } C. public void add(A a) { a.getValue(); } D. public void add(A a, B b) { a.getValue(); } E. public void add(C c1, C c2) { c1.getValue(); }

Galera a respostas são BCD ta certo? Se sim pq?

oque vc não entendeu no exercicio???..
B demonstra o polimorfismo porq vc pode passar qualquer tipo de B e seus subtipos
C tb demonstra porq vc pode passar qualquer tipo de A e seus subtipos
D tb está correta porq vc pode passar qualquer tipo de A e B e seus subtipos…

A está incorreta porq C é a sua última classe na hierarquia…
E está incorreta pelo msm motivo…
estou levando em consideração a hierarquia de classes do exercicio…

Desculpe respondi 2 vezes…

eu nao tinha interpretado da maneira que vc interpretou, estava pensando no polimorfismo em relaçao a subscriçao dos metodos ali em questao. Nesse caso do jeito que vc falou a alternativa B demonstra polimorfismo pq eu posso passar um “c”, a alternativa C demonstra pq posso passar um “b” e um “c” e a alternativa C tb demonstra pq posso passar no primeiro argumento um “b” e um “c” e no segundo argumento um “c”, isso mesmo né?

isso msm…
esse eh um exercicio dificil de visualizar…

hum ok tranquilão então :D, vlw vmsb