Ответ
Перегрузка (Overload) позволяет создавать несколько методов с одинаковым именем, но разными параметрами (тип, количество, порядок). Компилятор выбирает подходящий метод на основе аргументов.
Пример:
fun sum(a: Int, b: Int): Int {
return a + b
}
fun sum(a: Double, b: Double): Double {
return a + b
}
Ключевые моменты:
- Различается только сигнатура (параметры)
- Возвращаемый тип не учитывается
- Упрощает API, делая его интуитивным
- Часто используется в конструкторах