Sobes.tech
Junior — Middle

Можете ли објаснити шта је функционални интерфејс у Јави и зашто је потребан?

sobes.tech АИ

Одговор од АИ

Funkcionalni interfejs u Javi je interfejs sa tačno jednom apstraktnom metodom. Potreban je za podršku funkcionalnog programiranja i omogućava korišćenje lambda izraza i referenci na metode.

Čemu to služi:

  • Pojednostavljuje kod, omogućavajući pisanje kompaktnijih anonimnih funkcija.
  • Povećava čitljivost i izražajnost.
  • Omogućava prenošenje ponašanja kao parametra.

Primer funkcionalnog interfejsa:

@FunctionalInterface
public interface Calculator {
    int calculate(int a, int b);
}

// Korišćenje sa lambda izrazom
Calculator sum = (a, b) -> a + b;
int result = sum.calculate(5, 3);  // result = 8

Atribut @FunctionalInterface nije obavezan, ali pomaže kompajleru da proveri da li je interfejs zaista funkcionalan.