Sobes.tech
Junior — Middle

Jak można zaimplementować mechanizm dziedziczenia w klasach w języku Kotlin?

sobes.tech AI

Odpowiedź od AI

W Kotlinie do implementacji dziedziczenia klas używa się słowa kluczowego open dla klasy bazowej i : do wskazania dziedziczenia.

Domyślnie wszystkie klasy w Kotlinie są final (nie można ich dziedziczyć), więc klasę bazową należy zadeklarować jako open.

Przykład:

open class Animal {
    open fun sound() {
        println("Jakiś dźwięk")
    }
}

class Dog : Animal() {
    override fun sound() {
        println("Szczekanie")
    }
}

fun main() {
    val dog = Dog()
    dog.sound() // Wypisze: Szczekanie
}

Tutaj Dog dziedziczy po Animal i nadpisuje metodę sound.