Junior — Middle
Jak zadeklarować klasę w Kotlinie, aby można ją było rozszerzać w klasach dziedziczących?
sobes.tech AI
Odpowiedź od AI
W Kotlinie domyślnie wszystkie klasy są final, co oznacza, że nie mogą być dziedziczone. Aby umożliwić dziedziczenie, klasa musi być zadeklarowana z modyfikatorem open.
Przykład:
open class Animal {
open fun sound() {
println("Jakiś dźwięk")
}
}
class Dog : Animal() {
override fun sound() {
println("Szczekanie")
}
}
Tutaj Animal jest zadeklarowane jako open, co pozwala klasie Dog dziedziczyć po nim i nadpisywać metody.