カスタム関数インタフェース: Javaでの活用方法


まず、カスタム関数インタフェースの定義方法について説明します。カスタム関数インタフェースは、@FunctionalInterfaceアノテーションを使用して定義されます。このアノテーションは、インタフェースが関数型インタフェースであることを示します。関数型インタフェースは、1つの抽象メソッドを持つインタフェースのことです。

例えば、以下のようなカスタム関数インタフェースを定義することができます。

@FunctionalInterface
interface MyFunction {
    void performAction(int number);
}

この例では、MyFunctionという名前のカスタム関数インタフェースを定義しています。このインタフェースは、performActionという1つの抽象メソッドを持ち、int型の引数を受け取ります。

カスタム関数インタフェースは、ラムダ式やメソッド参照と組み合わせて使用できます。以下に、いくつかの使用例を示します。

ラムダ式を使用した例:

MyFunction function = (number) -> {
    System.out.println("Performing action with number: " + number);
};
function.performAction(10);

この例では、MyFunctionインタフェースの実装をラムダ式で行っています。performActionメソッドの処理は、引数として渡された数値を表示するだけです。

メソッド参照を使用した例:

class ActionPerformer {
    public static void perform(int number) {
        System.out.println("Performing action with number: " + number);
    }
}
MyFunction function = ActionPerformer::perform;
function.performAction(20);

この例では、ActionPerformerクラスのperformメソッドをMyFunctionインタフェースの実装として使用しています。performActionメソッドの呼び出し時に、performメソッドが実行されます。

カスタム関数インタフェースは、コールバックや並列処理など、さまざまなシナリオで活用することができます。また、Java 8以降のバージョンでは、多くの組み込み関数インタフェースも提供されています。

この記事では、カスタム関数インタフェースの基本的な使い方といくつかのコード例を紹介しました。これらの例を参考にして、自分のプログラムでカスタム関数インタフェースを活用してみてください。