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