1
resposta

[Dúvida] Fiquei confuso?

Poderiam me explicar melhor essas duas perguntas?

fiquei em duvida completamente

1 resposta

Oi, Levi! Tudo bem?

Para compreender melhor a atividade podemos analisar as alternativas uma a uma:

A) A classe Gato não pode herdar da classe Cachorro. Essa alternativa está correta, pois em Java, uma classe só pode herdar diretamente de uma única classe. No exemplo, tanto Gato quanto Cachorro herdam diretamente da classe Animal, mas Gato não pode herdar de Cachorro.

B) Um objeto do tipo Animal pode ser instanciado e fazer barulho, mas não é possível chamar o método buscarOsso. Essa alternativa também está correta. Quando instanciamos um objeto do tipo Animal, ele só terá acesso aos métodos definidos na classe Animal. O método buscarOsso está definido na classe Cachorro, então um objeto Animal não pode chamar esse método.

C) Somente é possível instanciar objetos Gato e Cachorro. Essa alternativa está incorreta, pois podemos instanciar objetos de qualquer classe que não seja abstrata. No exemplo, Animal não é uma classe abstrata, então podemos instanciar objetos Animal, Gato e Cachorro.

D) A classe Gato não compila, pois faltou sobrescrever o método fazerBarulho. Essa alternativa está incorreta, pois a classe Gato compila normalmente, mesmo sem sobrescrever o método fazerBarulho. A sobrescrita de métodos é opcional, a menos que o método na classe pai seja abstrato, o que não é o caso aqui.

Espero ter ajudado!

Um forte abraço e bons estudos!