1
resposta

Formulação do codigo de exemplo

Na classe cachorro, não seria necessário sobrescrever o método fazerBarulho()?

1 resposta

Olá, João! Tudo bem?

Sim, na classe Cachorro, é necessário sobrescrever o método fazerBarulho() se você deseja que ele tenha um comportamento específico diferente do método fazerBarulho() da classe Animal.

No exemplo, a classe Cachorro deveria sobrescreve o método fazerBarulho() da seguinte forma:

public class Cachorro extends Animal {

    @Override
    public void fazerBarulho() {
        System.out.println("Au au au!");
    }

    public void buscarOsso() {
        System.out.println("Buscando o osso!");
    }
}

Dessa forma, quando você criar uma instância de Cachorro e chamar o método fazerBarulho(), ele exibirá "Au au au!" em vez de "fazendo barulho!" que é o comportamento padrão definido na classe Animal.

No mais, pedirei para o pessoal responsável pelo material que atualizem essa parte do código.

Bons estudos!