Sobes.tech
Назад к вопросам
Junior — Middle
82

Каким образом в Kotlin можно объявить класс так, чтобы его можно было расширять в наследующих классах?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

В Kotlin по умолчанию все классы final, то есть не могут быть унаследованы. Чтобы разрешить наследование, класс нужно объявить с модификатором open.

Пример:

open class Animal {
    open fun sound() {
        println("Some sound")
    }
}

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

Здесь Animal объявлен как open, что позволяет классу Dog наследоваться от него и переопределять методы.