Java : @FunctionalInterface (annotation) con ejemplos

FunctionalInterface (Java SE 24 & JDK 24) en Java con ejemplos.
Encontrará muestras de código para la mayoría de los métodos FunctionalInterface.

Nota :


Summary

Un tipo de anotación informativa que indica que una declaración de tipo de interfaz está destinada a ser una interfaz funcional, según la definición de la Especificación del Lenguaje Java. Conceptualmente, una interfaz funcional tiene exactamente un método abstracto. (Traducción automática)

Class diagram

Instances of functional interfaces can be created with lambda expressions.

@FunctionalInterface
public interface Foo {
    void func();
}
public class Main {
    public static void main(String[] args) {
        // A lambda expression.
        final Foo foo = () -> System.out.println("Foo!");
        foo.func();
    }
}

// --- PowerShell ---
//PS R:\java-work> ls -Name
//Foo.java
//Main.java
//
//PS R:\java-work> javac *.java
//
//PS R:\java-work> java Main
//Foo!

An example of a compile error :

@FunctionalInterface
public interface Foo {
    void func1();

    void func2();
}

// --- PowerShell ---
//PS R:\java-work> javac *.java
//Foo.java:2: error: Unexpected @FunctionalInterface annotation
//@FunctionalInterface
//^
//  Foo is not a functional interface
//    multiple non-overriding abstract methods found in interface Foo
//1 error

Please see also Java Language Specification :


Related posts

  • Ejemplos de API
To top of page