EventListenerList

EventListenerList (이벤트 리스너 목록)

EventListener 목록을 보관하는 클래스입니다. 하나의 인스턴스로 해당 인스턴스의 모든 유형 리스너를 보관할 수 있습니다. Serializable을 구현합니다.

출처: Java API Reference

본문

EventListenerList를 사용하는 클래스는 타입 안전 API(가급적 JavaBeans 스펙 준수)와 이벤트 알림 메서드를 적절한 리스너에게 전달하는 메서드를 제공해야 합니다. 이 클래스의 주요 장점은 리스너가 없을 때 비교적 저렴하고, 이벤트 리스너 목록의 직렬화를 한 곳에서 제공하며, 올바르게 사용하면 어느 정도의 멀티스레드 안전성을 제공한다는 점입니다.

사용 예를 들어 FooEvent를 보내는 클래스를 정의한다면 listenerList.add(FooListener.class, l)로 리스너를 추가하고 removeFooListener로 제거하며, fireFooXXX 메서드로 등록된 모든 리스너에게 알림을 보냅니다. getListenerList 메서드는 반드시 비-null 배열을 반환하며, 리스너는 마지막에서 처음 순으로 처리됩니다.

이 클래스는 ListenerTypeListener 쌍의 목록을 내부 필드로 관리하며, 각 알림 메서드마다 하나의 fire 메서드를 제공해야 합니다.

더 알아보기 (Learn more)

Java 공식 API