> Что такое extension функции в Kotlin и как их использовать (Kotlin)

Уровень: junior · Роль: mobile · Категория: Технические вопросы

Компании: ЛИПТ Софт

Стек: Kotlin

> Пример ответа

Extension функции в Kotlin - это механизм, позволяющий добавлять новые методы к существующим классам без наследования или изменения их исходного кода. Они объявляются вне класса, но вызываются так, будто являются его членами.

Синтаксис: имя функции указывается через точку после типа-приёмника (класса, к которому добавляется метод). Например, для класса String можно создать extension, возвращающий последний символ:

fun String.lastChar(): Char = this[length - 1]

Использование: "Hello".lastChar() вернёт 'o'.

Внутри extension доступны public-члены класса через this (можно опускать). Важно: extension не изменяют сам класс - это статические утилиты, которые компилятор подставляет как обычные статические функции с первым аргументом-приёмником. Поэтому они не могут переопределять существующие методы (если сигнатура совпадает, приоритет у членов класса).

В контексте QA extension удобны для добавления вспомогательных проверок или преобразований, например:

fun String.isValidEmail(): Boolean = contains("@") && contains(".")

Используйте их для улучшения читаемости тестов и утилитарного кода, избегая создания Helper-классов.

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью