Middle
Τι γνωρίζετε για τις λειτουργικές διεπαφές στη Java 8 και νεότερες εκδόσεις;
sobes.tech AI
Απάντηση από AI
Η λειτουργική διεπαφή είναι μια διεπαφή που περιέχει μόνο μία αφηρημένη μέθοδο. Χρησιμοποιούνται για την υλοποίηση εκφράσεων lambda και αναφορών σε μεθόδους. Μπορούν να έχουν προεπιλεγμένες και στατικές μεθόδους.
Παραδείγματα ενσωματωμένων λειτουργικών διεπαφών στη βιβλιοθήκη java.util.function:
Predicate<T>: Δέχεται ένα όρισμα τύπουTκαι επιστρέφει μια boolean τιμή.// public boolean test(T t);Consumer<T>: Δέχεται ένα όρισμα τύπουTκαι δεν επιστρέφει τίποτα. Εκτελεί μια ενέργεια πάνω στο όρισμα.// public void accept(T t);Supplier<T>: Δεν δέχεται ορίσματα και επιστρέφει μια τιμή τύπουT.// public T get();Function<T, R>: Δέχεται ένα όρισμα τύπουTκαι επιστρέφει μια τιμή τύπουR.// public R apply(T t);
Η σημείωση @FunctionalInterface είναι προαιρετική, αλλά συνιστάται για έλεγχο από τον μεταγλωττιστή και για σαφήνεια.
@FunctionalInterface
interface MyFunction {
String process(String input);
default void doNothing() {
// Προεπιλεγμένη μέθοδος
}
}