Orientação a objetos com Java

18 - Abstração

Uma classe abstrata em Java é uma classe que não pode ser instanciada diretamente. Ou seja, você não pode criar objetos diretamente de uma classe abstrata. Ela é projetada para ser estendida por outras classes. As classes abstratas servem como base para outras classes, fornecendo uma estrutura comum e permitindo a definição de métodos que devem ser implementados pelas subclasses.

Características
  • Métodos Abstratos: Uma classe abstrata pode conter métodos abstratos, ou seja, métodos que não têm implementação na classe abstrata e devem ser implementados pelas subclasses. Esses métodos são declarados com a palavra-chave abstract.
  • Métodos Completos: Além de métodos abstratos, uma classe abstrata pode ter métodos com implementação. Isso permite fornecer funcionalidades comuns para as subclasses, enquanto deixa a implementação de outros métodos para as subclasses.
  • Construtores: Uma classe abstrata pode ter construtores, mas, como ela não pode ser instanciada diretamente, os construtores são usados para inicializar os atributos da classe na hora que a subclasse for instanciada.
  • Atributos: A classe abstrata pode ter atributos como qualquer outra classe, podendo ser usados pelas subclasses.
  • Herança: Uma classe abstrata deve ser estendida por uma ou mais subclasses. As subclasses que herdam uma classe abstrata devem implementar os métodos abstratos definidos na classe base, a menos que elas também sejam abstratas.

Vamos aprender como trabalhar com classes abstratas na prática? Acompanhe o vídeo abaixo: