Sobes.tech
Junior — Middle

¿Cuál es el papel y la finalidad de las clases abstractas en la programación orientada a objetos?

sobes.tech AI

Respuesta de la IA

Las clases abstractas en programación orientada a objetos sirven como plantillas para crear otras clases. No pueden ser instanciadas directamente y generalmente contienen métodos implementados, así como métodos abstractos (sin implementación), que deben ser sobrescritos en las subclases. Esto permite definir una interfaz común y un comportamiento básico, proporcionando flexibilidad para implementaciones específicas.

Ejemplo en Kotlin (Android):

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

class Dog : Animal() {
    override fun makeSound() {
        println("Guau-guau")
    }
}

Aquí, Animal es una clase abstracta que define un contrato general para todos los animales, y Dog implementa un comportamiento específico del sonido.