¿Cuál es la interfaz funcional de Java 8 para un método que no toma nada y no devuelve nada?
Es decir, ¿el equivalente a C # sin parámetros Actioncon voidtipo de retorno?
java
java-8
java-stream
Miguel Gamboa
fuente
fuente

RunnableLa especificación de la interfaz indica que debe proporcionar código ejecutable a laThreadclase. No me parece correcto usarloRunnabledonde no está destinado a ser ejecutado por un hilo; parece engañoso.Runnablese define como aFunctionalInterfaceporque cumple con la especificación de una interfaz funcional y se puede crear utilizando la sintaxis lambda. ¿Por qué no crear su propia interfaz funcional? ver Runnable , ver FunctionalInterfaceRunnableestá anotado con@FunctionalInterfacey (ii) incluso en el contexto de una expresión lambda se ejecutará en un hilo: el hilo en el que se ejecuta el lambda que puede ser el hilo actual ...Runnableestaba destinado a ser utilizado para este propósito, no solo para contextos de hilos.Solo haz el tuyo
y úsalo así
y la salida
fuente
@FunctionalInterface solo permite el método método abstracto Por lo tanto, puede crear una instancia de esa interfaz con la expresión lambda como se muestra a continuación y puede acceder a los miembros de la interfaz
fuente