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

Можете объяснить концепцию расширяющих функций в языке Kotlin?

Компании, где спрашивали
IBS

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

sobes.tech AI

Расширяющие функции (extension functions) в Kotlin позволяют добавлять новые функции к существующим классам без необходимости наследования или изменения исходного кода класса.

Это достигается с помощью специального синтаксиса, где функция объявляется вне класса, но с указанием типа-приёмника, к которому она "расширяет" функциональность.

Пример расширяющей функции для класса String:

fun String.isPalindrome(): Boolean {
    return this == this.reversed()
}

fun main() {
    val word = "level"
    println(word.isPalindrome()) // Выведет: true
}

Таким образом, расширяющие функции позволяют писать более выразительный и удобочитаемый код, добавляя методы к классам, даже если у вас нет доступа к их исходному коду.