Sobes.tech
Junior — Middle

Qual é o papel e a finalidade das classes abstratas na programação orientada a objetos?

sobes.tech IA

Resposta da IA

As classes abstratas na programação orientada a objetos servem como modelos para criar outras classes. Elas não podem ser instanciadas diretamente e geralmente contêm métodos implementados, bem como métodos abstratos (sem implementação), que devem ser sobrescritos nas subclasses. Isso permite definir uma interface comum e um comportamento básico, proporcionando flexibilidade para implementações específicas.

Exemplo em Kotlin (Android):

abstract class Animal {
    abstract fun makeSound()
    fun sleep() {
        println("A dormir")
    }
}

class Dog : Animal() {
    override fun makeSound() {
        println("Au-au")
    }
}

Aqui, Animal é uma classe abstrata que define um contrato geral para todos os animais, e Dog implementa um comportamento de som específico.