-
Traduzindo, do grego, ao pé da letra, polimorfismo significa "muitas formas".
Essas formas, em nosso contexto de programação, são as subclasses/objetos criados a partir de uma classe maior, mais geral, ou abstrata.
Polimorfismo é a capacidade que o Java nos dá de controlar todas as formas de uma maneira mais simples e geral, sem ter que se preocupar com cada objeto especificamente.
http://www.javaprogressivo.net/2012/10/Polimorfismo-em-Java--o-que-e-pra-que-serve-como-e-onde-usar.html
-
a)Herança e sobrescrita de métodos.
Herança é necessario porque uma classe deve herdar metodos abstratos de outra classe para poder fornecer a ele seus proprios parametros e operações. Overriding (sobrescrita de métodos) ocorre quando a classe que herdou o metodo o personaliza de acordo com a necessidade do que a classe deve fazer
-
interface não é classe, é apenas uma interface que precisa ser realizada por alguma classe. será esta classe que dará corpo aos métodos (não implementados) das interfaces, pois não passam de assinaturas.
-
O correto é a letra A.
A FCC considerou nesta questão que polimorfismo “de verdade” é o polimorfismo dinâmico. Como vimos, o polimorfismo dinâmico é a sobrescrita de métodos da superclasse pelas subclasses. O método a ser executado pelo programa (da superclasse ou da subclasse) é definido em tempo de execução dependendo da instância do classe.
Resposta: A