Middle
153
რა იცით Java 8 და უფრო ახალი ვერსიების ფუნქციონალურ ინტერფეისებზე?
პასუხი AI-სგან
sobes.tech AI
ფუნქციური ინტერფეისი არის ინტერფეისი, რომელიც შეიცავს მხოლოდ ერთ აბსტრაქტულ მეთოდს. იგი გამოიყენება ლამბდა გამოთქმებისა და მეთოდების მითითებების განხორციელებისთვის. მას შეუძლია ჰქონდეს დეფოლტ და სტატიკური მეთოდები.
java.util.function პაკეტში ჩაშენებული ფუნქციონალური ინტერფეისების მაგალითები:
Predicate<T>: იღებსTტიპის არგუმენტს და აბრუნებს ბულეურ მნიშვნელობას.// 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() {
// დეფოლტ მეთოდი
}
}