Sobes.tech
Junior — Middle

Kā noteikt vienīgo abstrakto metodi interfeisā, kas atbilst funkcionālajam interfeisam Java?

sobes.tech AI

Atbilde no AI

Java funkcionālais interfeiss ir interfeiss, kas satur tieši vienu abstraktu metodi (SAM — Single Abstract Method). Lai definētu tādu metodi, ir jānodrošina, ka interfeisā ir tikai viens bez realizācijas metodes.

Piemērs:

@FunctionalInterface
public interface MyFunctionalInterface {
    void execute(); // vienīgais abstraktais metodes

    // Var pievienot metodes ar noklusējuma realizāciju
    default void log() {
        System.out.println("Logging...");
    }
}

@FunctionalInterface anotācija nav obligāta, bet ieteicama, jo kompilators pārbaudīs, vai interfeiss patiešām ir funkcionāls.

Tādējādi, vienīgais abstraktais metodes ir tas bez ķermeņa, kas nosaka interfeisa līgumu, un visi pārējie metodes vai nu nepastāv, vai ir ar noklusējuma realizāciju vai ir statiski.