Back to questions
Junior — Middle
66
Как реализуются и используются расширяющие функции в Kotlin?
Answer from AI
sobes.tech AI
В Kotlin расширяющие функции позволяют добавлять новые функции к существующим классам без необходимости наследования или изменения исходного кода класса. Они объявляются вне класса с помощью синтаксиса fun ReceiverType.functionName(). Внутри расширяющей функции this ссылается на объект-приемник.
Пример:
fun String.lastChar(): Char = this[this.length - 1]
val c = "Kotlin".lastChar() // 'n'
Расширяющие функции удобно использовать для добавления утилит и улучшения читаемости кода, особенно при работе с библиотечными классами. Они вызываются как обычные методы объекта, но фактически являются статическими функциями с первым параметром — объектом-приемником.