Sobes.tech
Junior — Middle

Как може да се реализира механизъм за наследяване при класовете в Kotlin?

sobes.tech AI

Отговор от AI

В Kotlin за реализиране на наследяване на класове се използва ключовата дума open за базовия клас и : за указване на наследяване.

По подразбиране всички класове в Kotlin са final (не наследяеми), затова базовият клас трябва да бъде обявен с open.

Пример:

open class Animal {
    open fun sound() {
        println("Някакъв звук")
    }
}

class Dog : Animal() {
    override fun sound() {
        println("Лай")
    }
}

fun main() {
    val dog = Dog()
    dog.sound() // Изход: Лай
}

Тук Dog наследява от Animal и презаписва метода sound.