何もとらず、何も返さないメソッドのJava 8機能インターフェイスとは何ですか?
つまり、戻り値の型がAction
のC#パラメータなしvoid
と同等ですか?
私が正しく理解していれば、メソッドvoid m()
を備えた機能的なインターフェースが必要です。その場合、単に Runnable
を使用できます。
自分で作る
@FunctionalInterface
public interface Procedure {
void run();
default Procedure andThen(Procedure after){
return () -> {
this.run();
after.run();
};
}
default Procedure compose(Procedure before){
return () -> {
before.run();
this.run();
};
}
}
そして、このように使用します
public static void main(String[] args){
Procedure procedure1 = () -> System.out.print("Hello");
Procedure procedure2 = () -> System.out.print("World");
procedure1.andThen(procedure2).run();
System.out.println();
procedure1.compose(procedure2).run();
}
そして出力
HelloWorld
WorldHello