-
R: E
classe abstrata = interface
-
As classes abstratas são classes feitas especialmente para serem modelos para suas classes derivadas. As classes derivadas, via de regra, deverão sobrescrever os métodos para realizar a implementação dos mesmos.
sobrescrever métodos = mudar comportamento = polimorfismo
Letra E
-
Cuidado com os comentários... Classe abstrata != interface....
-
Classe abstrata != interface.
-
O polimorfismo permite que classes abstratas consigam receber comportamentos através de classes concretas.
Por exemplo, um dispositivo USB, podemos considerar que o USB seria uma classe abstrata enquanto os dispositivos (Pen Driver, Ipad, Câmeras, etc) seriam as classes concretas. Ou seja, o USB é uma especificação que pode ter várias implementações com características diferentes.
sobrescrever métodos = mudar comportamento = polimorfismo
-
e
Classes abstratas nao sao instanciadas e possuem metodos que so sao definidos nas subclasses. Interfaces possuem somente metodos abstratos sem corpo algum, forçando as classes que as implementarem a definir todos os metodos listados. Em ambos os casos, polimorfismo acontece porque as classes herdam metodos que vao ser personalizados consoante as operações que devem realizar.
-
Queria levantar um outro questionamento bem capcioso: sobrecarga de métodos é polimorfismo?
Tem lugares que diz que é um tipo de polimorfismo (Ad hoc), outros dizem que não é... Por exemplo, https://stackoverflow.com/questions/2400284/is-method-overloading-considered-polymorphism