
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: