사용자 정의 이벤트는 구성 요소가 특정 트리거를 기반으로 서로 통신할 수 있도록 하는 많은 프로그래밍 시나리오에서 없어서는 안 될 요소입니다. 이 글의 목표는 다음과 같습니다.
문제 설명
특정 이벤트를 기반으로 개체 간의 상호 작용을 촉진하기 위해 Java에서 사용자 정의 이벤트를 어떻게 구현할 수 있습니까?
솔루션
Observer 디자인 패턴은 사용자 정의 관리를 위한 우아한 솔루션을 제공합니다. 자바의 이벤트. Observer 패턴의 개요는 다음과 같습니다.
샘플 구현
다음 코드 조각은 Observer 패턴을 사용하여 사용자 정의 이벤트를 생성하는 방법을 보여줍니다.
import java.util.*; // Observer interface - defines what an Observer should respond to interface HelloListener { void someoneSaidHello(); } // Observable class - defines how an Observable manages Observers class Initiater { private List<HelloListener> listeners = new ArrayList<>(); // Method to add observers public void addListener(HelloListener toAdd) { listeners.add(toAdd); } // Method to notify observers public void sayHello() { System.out.println("Hello!!"); for (HelloListener hl : listeners) { hl.someoneSaidHello(); } } } // Observer class - defines how an Observer responds to events 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(); initiater.addListener(responder); initiater.sayHello(); } }
실행
당신이 할 때 위 코드를 실행하면 개시자(관찰 가능) 및 응답자(관찰자)에 대한 개체가 생성됩니다. Initiater는 Responder를 관찰자로 추가하고 "hello" 이벤트(sayHello())가 발생하면 Responder에게 알림이 전송되고 할당된 작업으로 응답합니다. 이는 Observer 패턴을 사용하여 Java에서 사용자 정의 이벤트를 구현하는 방법을 보여줍니다.
위 내용은 관찰자 패턴을 사용하여 Java에서 사용자 정의 이벤트를 어떻게 구현할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!