Imagem de fundo

Considere o seguinte código em Java: Com base nos princípios da Programação Orientada a...

Considere o seguinte código em Java:


Imagem associada para resolução da questão


Com base nos princípios da Programação Orientada a Objetos e no mecanismo de herança, analise as afirmativas a seguir:


I. A classe Cachorro herda o atributo nome da classe Animal e pode acessá-lo diretamente por ele ter sido declarado como protected.

II. A anotação @Override garante, em tempo de compilação, que o método emitirSom() da subclasse esteja sobrescrevendo corretamente um método da superclasse.

III. Caso o construtor da classe Cachorro não chamasse explicitamente super(nome), o código ainda compilariam normalmente, pois o construtor da superclasse é automaticamente herdado.

IV. A classe Cachorro especializa o comportamento da superclasse ao redefinir o método emitirSom(), caracterizando polimorfismo por sobrescrita.


Assinale a alternativa CORRETA:


A

Apenas I, II e IV estão corretas.


B

Apenas I e III estão corretas.


C

Apenas II e IV estão corretas.


D

Apenas I, II e III estão corretas.


E

I, II, III e IV estão corretas.