Sobes.tech
Junior — Middle

Wat is de rol en het doel van abstracte klassen in objectgeoriënteerd programmeren?

sobes.tech AI

Antwoord van AI

Abstracte klassen in objectgeoriënteerd programmeren dienen als sjablonen voor het maken van andere klassen. Ze kunnen niet direct worden geïnstantieerd en bevatten meestal zowel geïmplementeerde methoden als abstracte methoden (zonder implementatie), die in subklassen moeten worden overschreven. Dit stelt je in staat om een gemeenschappelijk interface en basishandeling te definiëren, terwijl je flexibiliteit biedt voor specifieke implementaties.

Voorbeeld in Kotlin (Android):

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

class Dog : Animal() {
    override fun makeSound() {
        println("Woef-woef")
    }
}

Hier is Animal een abstracte klasse die een algemene contract voor alle dieren definieert, en Dog implementeert een specifiek geluidsgedrag.