Como criar e usar classes abstratas em Java
Uma classe abstrata é uma classe que não pode ser instanciada diretamente. Ela serve como base para outras classes, definindo uma estrutura comum que as subclasses devem seguir.
Carregando...
A palavra abstract antes da classe indica que ela é abstrata. O método emitirSom() também é abstrato, ou seja, não tem implementação na própria classe Animal, apenas a assinatura.
Toda subclasse de uma classe abstrata é obrigada a implementar os métodos abstratos dela.
Carregando...
emitirSom() precisou ser implementado em Cachorro. Já dormir() foi herdado normalmente, já que tinha implementação na classe Animal.
Carregando...
Não é possível criar um objeto diretamente de uma classe abstrata. Ela serve apenas como base.
Use quando várias classes compartilham um comportamento comum, mas cada uma precisa implementar parte desse comportamento de forma diferente. A classe abstrata garante que toda subclasse siga a mesma estrutura, sem precisar repetir métodos que já são comuns a todas.