Да, в основном. Интерфейсы FunctionN
являются внутренним представлением JVM для типов функций.
Одно из исправлений заключается в том, что тип (T1, T2, ..., Tn) -> R
представлен Function[n]<T1, T2, ...Tn, R>
, а не Function[n + 1]<...>
.
Это верно для функций с 22 или менее параметрами, в то время как функции с 23 и более параметрами представлены в едином специальном интерфейсе.
Вы можете найти некоторые примечания по дизайну в этом техническом документе: (ссылка)