ホームページ >Java >&#&チュートリアル >Observer パターンを使用して Java でカスタム イベントを作成および処理するにはどうすればよいですか?
Java では、さまざまなオブジェクトが相互に通信できるようにするカスタム イベントを作成できます。 「オブジェクト 1」が「こんにちは」と発話するなど、特定のイベントを実行するときにアクションをトリガーする必要があり、「オブジェクト 2」が「こんにちは」と返してイベントを承認することで応答するシナリオを考えてみましょう。
これを実現するには、オブザーバー パターンを利用します。以下は、カスタム イベントを作成して処理する方法を示す例です。
import java.util.*; // Define an interface for event listeners interface HelloListener { void someoneSaidHello(); } // Class that initiates the event (Object 1) class Initiater { private List<HelloListener> listeners = new ArrayList<>(); // Add an event listener public void addListener(HelloListener toAdd) { listeners.add(toAdd); } // Trigger the event public void sayHello() { System.out.println("Hello!!"); // Notify all listeners for (HelloListener hl : listeners) hl.someoneSaidHello(); } } // Class that listens to the event (Object 2) class Responder implements HelloListener { @Override public void someoneSaidHello() { System.out.println("Hello there..."); } } // Main class class Test { public static void main(String[] args) { Initiater initiater = new Initiater(); Responder responder = new Responder(); // Attach a listener to the initiator initiater.addListener(responder); // Trigger the event initiater.sayHello(); // Prints "Hello!!!" and "Hello there..." } }
この例では、Initiator クラスが「Hello」イベントを起動し、これは Responder クラスによって処理されます。イニシエーターが「こんにちは」と言うと、レスポンダーは「こんにちは」と応答します。
以上がObserver パターンを使用して Java でカスタム イベントを作成および処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。