Ответ
Функции расширения (extension functions) в Kotlin позволяют добавлять новые функции к существующим классам без наследования или модификации исходного кода. Они объявляются с префиксом имени класса, который расширяется.
// Пример: расширение класса String
fun String.addExclamation(): String {
return "$this!"
}
// Использование
val greeting = "Hello".addExclamation() // "Hello!"
Особенности:
- Не изменяют оригинальный класс
- Доступны как обычные методы класса
- Работают с nullable-типами (
String?.) - Можно расширять даже классы из стандартной библиотеки или Java-классы