Sobes.tech
Middle

Java 8 və yuxarı versiyalarda funksional interfeyslər haqqında nə bilirsiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Fəaliyyət interfeysi yalnız bir abstrakt metoddan ibarət olan interfeysdir. Lambda ifadələrinin və metodlara istinadların həyata keçirilməsi üçün istifadə olunur. Onlar default və static metodlara sahib ola bilərlər.

java.util.function paketində daxil olan funksional interfeyslərin nümunələri:

  • Predicate<T>: T tipində argument qəbul edir və boolean dəyər qaytarır.
    // public boolean test(T t);
    
  • Consumer<T>: T tipində argument qəbul edir və heç bir şey qaytarmır. Argument üzərində əməliyyat yerinə yetirir.
    // public void accept(T t);
    
  • Supplier<T>: Argument qəbul etmir və T tipində dəyər qaytarır.
    // public T get();
    
  • Function<T, R>: T tipində argument qəbul edir və R tipində dəyər qaytarır.
    // public R apply(T t);
    

@FunctionalInterface annotasiyası optionaldur, lakin kompilyator tərəfindən yoxlama və aydınlıq üçün tövsiyə olunur.

@FunctionalInterface
interface MyFunction {
    String process(String input);
    
    default void doNothing() {
        // Default metod
    }
}