Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のリアクティブストリームのコアインターフェイスは何ですか?


Java9はリアクティブストリームを導入しました java.util.concurrent.Flowの下 相互運用可能なパブリッシュ/サブスクライブをサポートするパッケージ フレームワーク。非同期境界を越えてデータの非同期ストリームを処理し(要素を別のスレッドまたはスレッドプールに渡す)、受信側が任意の量のデータをバッファリングすることを強制されないため、バッファオーバーフローは発生しません。

フローAPI 相互に関連する4つのコアインターフェースが含まれています:パブリッシャーサブスクライバーサブスクリプション 、およびプロセッサ

構文

@FunctionalInterface
public static interface Publisher<T> {
   public void subscribe(Subscriber<? super T> subscriber)
}
public static interface Subscriber<T> {
   public void onSubscribe(Subscription subscription);
   public void onNext(T item);
   public void onError(Throwable throwable);
   public void onComplete();
}
public static interface Subscription {
   public void request(long n);
   public void cancel();
}
public static interface Processor<T, R> extends Subscriber<T>, Publisher<R> {
}
これらの4つのインターフェース: Flow.Publisher Flow.Processo r、 Flow.Subscriber、 およびフロー。サブスクリプション リアクティブストリームの仕様に関連します。 発行者 インターフェースにはsubscribe()があります メソッド、サブスクリプション cancel()があります およびrequest() メソッドとサブスクライバー onSubscribe()があります 、 onNext() onError() 、および onComplete() メソッド。 プロセッサ インターフェイスは、Flowのすべてのメソッドを実装します。出版社 およびFlow.Subscriber インターフェイス。


  1. JavaでのFocusListenerインターフェースの重要性は何ですか?

    FocusListener フォーカスイベントは、コンポーネントがキーボードフォーカスを獲得または喪失するたびに生成されます。 。 フォーカスイベントを表すオブジェクトは、 FocusEventから作成されます クラス。 FocusEventに対応するリスナーインターフェイス クラスはFocusListener インターフェース。 FocusEventの各リスナー FocusListenerを実装できます インターフェイス。 FocusListener インターフェイスには2つのメソッドが含まれていますfocusGained(): リッスンされたコンポーネントがフォーカスを取

  2. JavaのMouseListenerとMouseMotionListenerの違いは何ですか?

    MouseListenerを実装できます MouseMotionListener を実装できるのに対し、マウスイベントの処理中にマウスが安定している場合のインターフェイス マウスイベントの処理中にマウスが動いているときのインターフェース。 マウスリスナー MouseEvent 押すと発火します 、リリース またはクリック (押してから離す)ソースオブジェクトにマウスボタン(左または右ボタン)を置くか、ソースオブジェクトからマウスポインタを(Enter)および離れる(exit)に置きます。 MouseListener インターフェイスは次の5つの抽象メソッドを宣言します 構文 pu