Назад к вопросам
Junior — Middle
68
Какими методами можно сохранить и использовать ссылку на функцию в коде?
Ответ от нейросети
sobes.tech AI
В Android для сохранения и использования ссылки на функцию можно использовать несколько подходов:
-
Интерфейсы с обратными вызовами (Callbacks)
- Создаётся интерфейс с методом, реализуемым в нужном классе.
- Передаётся объект интерфейса, вызывается метод при необходимости.
-
Лямбда-выражения и функциональные интерфейсы (Java 8+ / Kotlin)
- В Kotlin функции — это объекты первого класса, можно передавать и сохранять ссылки напрямую.
- В Java можно использовать функциональные интерфейсы и лямбды.
-
Метод ссылки (Method References)
- В Java 8+ можно использовать ссылки на методы, например
ClassName::methodName.
- В Java 8+ можно использовать ссылки на методы, например
-
Использование
Runnable,Callableили других стандартных интерфейсов- Для простых случаев можно сохранять объекты этих интерфейсов.
Пример на Kotlin:
fun performOperation(operation: () -> Unit) {
operation()
}
fun main() {
val sayHello = { println("Hello") }
performOperation(sayHello) // Передаём ссылку на функцию
}
Таким образом, ссылки на функции можно сохранять в переменных, передавать как параметры и вызывать позже.