Java 8 – Functional Interfaces

Java 8 bereichert das Java um Functional Interfaces. Ein Interface ist genau dann ein Functional Interface wenn es nur eine abstrakte Methode definiert.


Java 8 bereichert das Java Universum um Functional Interfaces. Ein Interface ist genau dann ein Functional Interface wenn es nur eine abstrakte Methode definiert. Ein populäres Beispiel dafür ist java.lang.Runnable da es lediglich

void run();

als abstrakte Methode definiert. Das funktionale Interface wird in weiterer Folge benötigt, um Lambda Ausdrücke, Methodenreferenzen und Klassenreferenzen nutzen zu können. Dazu hier im Blog bald mehr.

Um ein Interface bewusst als funktionales Interface zu kennzeichnen gibt es, seit Java 8, die neue Annotation @FunctionalInterface. Ein Interface mit dieser Annotation wirft beim Kompilieren einen Fehle, wenn es die Voraussetzungen dafür nicht erfüllt.

Ein funktionales Interface darf zwar nur eine abstrakte Methode definieren, kann jedoch beliebig viele default und static Methoden (siehe meinen Blogpost Java 8 – Erweiterungen rund ums Interface) führen.

Ähnliche Artikel:

Autor: Thomas Pummer

Thomas Pummer ist Softwareentwickler an der Universität Wien. In seiner Freizeit betreut er das Open Source Projekt TrayRSS und werkt an diversen anderen kleinen Projekten. Er ist sehr interessiert an Open Source und Webentwicklung und testet gern neue Programmiersprachen.

Ein Gedanke zu „Java 8 – Functional Interfaces“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*