Junior — Middle
Czy możesz wyjaśnić, czym jest interfejs funkcyjny w języku Java i do czego służy?
sobes.tech AI
Odpowiedź od AI
Interfejs funkcyjny w Javie to interfejs z dokładnie jedną metodą abstrakcyjną. Jest potrzebny do obsługi programowania funkcyjnego i pozwala na używanie wyrażeń lambda i odwołań do metod.
Po co to jest:
- Ułatwia kod, pozwalając na pisanie zwartych funkcji anonimowych.
- Zwiększa czytelność i wyrazistość.
- Pozwala przekazywać zachowanie jako parametr.
Przykład interfejsu funkcyjnego:
@FunctionalInterface
public interface Calculator {
int calculate(int a, int b);
}
// Użycie z wyrażeniem lambda
Calculator sum = (a, b) -> a + b;
int result = sum.calculate(5, 3); // result = 8
Adnotacja @FunctionalInterface nie jest obowiązkowa, ale pomaga kompilatorowi sprawdzić, czy interfejs jest rzeczywiście funkcyjny.