Sobes.tech
Junior — Middle

Is het in Kotlin mogelijk om een klasse te maken die als sealed is gemarkeerd en die erft van een andere sealed klasse?

sobes.tech AI

Antwoord van AI

In Kotlin kan een klasse gemarkeerd als sealed erven van een andere sealed klasse. Daarnaast kan de afstammeling ook sealed zijn, wat het mogelijk maakt om hiërarchieën te creëren met een beperkt aantal subklassen op meerdere niveaus. De belangrijkste voorwaarde is dat alle sealed subklassen van een klasse in hetzelfde bestand moeten staan als de sealed klasse zelf.

Voorbeeld:

sealed class Animal {
    sealed class Mammal : Animal() {
        class Dog : Mammal()
        class Cat : Mammal()
    }
    class Bird : Animal()
}

Hier is Mammal een sealed klasse die erft van de sealed klasse Animal. Deze aanpak maakt het mogelijk om complexere hiërarchieën te creëren met een gecontroleerd aantal afstammelingen.