Java 8 でわかっているように、関数型インターフェースの概念が導入されました。Functional Interface には 1 つのabstract
メソッドがあり、いくつかのデフォルトまたは静的メソッドが可能です。
しかし、Functional インターフェースに抽象メソッドが 1 つしかないのはなぜでしょうか? インターフェイスに複数の抽象メソッドがある場合、なぜこれが機能インターフェイスではないのですか?
Java 8 でわかっているように、関数型インターフェースの概念が導入されました。Functional Interface には 1 つのabstract
メソッドがあり、いくつかのデフォルトまたは静的メソッドが可能です。
しかし、Functional インターフェースに抽象メソッドが 1 つしかないのはなぜでしょうか? インターフェイスに複数の抽象メソッドがある場合、なぜこれが機能インターフェイスではないのですか?
Lambda 関数を容易にするために、 Single Abstract Method Interfaceとも呼ばれる関数型インターフェイスが導入されました。ラムダ関数は 1 つのメソッドの実装しか提供できないため、関数型インターフェイスには抽象メソッドを 1 つだけ持つことが必須です。詳細については、こちらを参照してください。
編集-> ここで注目に値するのは、機能インターフェースはインターフェースにデフォルトの実装を持つことができるということです。実装の詳細については、上記のリンクを参照してください。