Sobes.tech
Junior — Middle

რა არის მაქსიმალური რაოდენობა მეთოდების, რომლებიც დაშვებულია ფუნქციონალური დანიშნულების ინტერფეისში?

sobes.tech AI

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

Android-ში (და უფრო ზუსტად Java-ში) ფუნქციონალური ინტერფეისი უნდა შეიცავდეს ზუსტად ერთ აბსტრაქტულ მეთოდს. ეს შეზღუდვა დაკავშირებულია იმასთან, რომ ფუნქციონალური ინტერფეისები განკუთვნილია ლამბდა გამოთქმებთან და მეთოდების მითითებებთან გამოყენებისთვის.

ამიტომ, ფუნქციონალური ინტერფეისის მაქსიმალური აბსტრაქტული მეთოდების რაოდენობა ერთია. თუმცა, ინტერფეისი შეიძლება შეიცავდეს ნებისმიერი რაოდენობის დეფოლტ (default) ან სტატიკურ მეთოდებს.

მაგალითი ფუნქციონალური ინტერფეისის:

@FunctionalInterface
public interface MyFunction {
    void apply(); // ერთადერთი აბსტრაქტული მეთოდი

    default void log() {
        System.out.println("Logging");
    }
}