Funktionale Schnittstellen müssen auf genau eine zu implementierende Methode hinauslaufen, auch wenn aus Oberschnittstellen mehrere Operationen vorgeschrieben werden, die aber durch Einsatz von Generics auf eine Operation verdichten:
interface I<S, T extends CharSequence> { void len( S text ); void len( T text ); } interface FI extends I<String, String> { }
FI ist unsere funktionale Schnittstelle, da die Signatur der Methode eindeutig ist: len(String).