Sobes.tech
Junior — Middle

Kaip Kotlin'e paskelbti klasę, kad ją būtų galima išplėsti paveldimumo klasėse?

sobes.tech AI

Atsakymas iš AI

Kotlin'e pagal numatytuosius nustatymus visos klasės yra final, tai reiškia, kad jų paveldėjimas nėra leidžiamas. Norint leisti paveldėjimą, klasė turi būti deklaruota su modifikatoriumi open.

Pavyzdys:

open class Animal {
    open fun sound() {
        println("Kažkoks garsas")
    }
}

class Dog : Animal() {
    override fun sound() {
        println("Laižas")
    }
}

Čia Animal yra deklaruota kaip open, kas leidžia klasei Dog paveldėti iš jos ir perrašyti metodus.