Poderiam me explicar melhor essas duas perguntas?
fiquei em duvida completamente
Poderiam me explicar melhor essas duas perguntas?
fiquei em duvida completamente
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!