Sobes.tech
Junior — Middle

შეგიძლიათ ჩამოთვალოთ პროგრამირების ფუნქციონალური ინტერფეისების ძირითადი მახასიათებლები?

sobes.tech AI

პასუხი AI-სგან

Java-ში ფუნქციონალური ინტერფეისები არის ინტერფეისები, რომელთაც მხოლოდ ერთი აბსტრაქტული მეთოდი აქვთ, რაც მათ საშუალებას აძლევს გამოიყენონ როგორც სამიზნე ტიპები ლამბდა გამოთქმებისა და მეთოდის მითითებებისათვის.

ძირითადი მახასიათებლები:

  • ერთი აბსტრაქტული მეთოდი (SAM - Single Abstract Method).
  • შეიძლება შეიცავდეს ნაგულისხმევ მეთოდებს იმპლემენტაციით.
  • შეიძლება შეიცავდეს სტატიკურ მეთოდებს.
  • აღნიშნულია @FunctionalInterface ანოტაციით (არავალდებულო, მაგრამ რეკომენდირებულია შემოწმებისთვის).
  • საშუალებას აძლევს დაწეროთ უფრო მოკლე და გამოხატული კოდი ლამბდების გამოყენებით.

მაგალითი:

@FunctionalInterface
public interface Converter<F, T> {
    T convert(F from);
}

// გამოყენება
Converter<String, Integer> stringToInteger = Integer::valueOf;
int number = stringToInteger.convert("123");