2008-10-27 31 views

Respuesta

10

El mecanismo de evento java es en realidad una implementación del patrón de diseño Observer. Sugiero que haga una pequeña lectura en el patrón del observador, esto le dará una gran cantidad de información sobre cómo funciona el mecanismo de evento en Java.

See observer pattern on Wikipedia

6

Generalmente eventos se manejan mediante el registro de una llamada de retorno con la clase que elevaría el evento. Cuando ocurre el evento, esa clase llamará a la función de devolución de llamada.

Encontrarás muchos ejemplos de swing. Aquí hay un ejemplo de no-oscilación de una aplicación de chat que hice hace un tiempo atrás

Esta era una biblioteca que permitiría al desarrollador incorporar funciones de chat a sus aplicaciones. La clase ChatClient tiene un miembro de IMessageListener tipo

IMessageListener listener; 

de Afer crear el objeto para la clase ChatClient, el usuario llamará setListener en el objeto. (Podría ser addListerer para múltiples oyentes)

public void setListener(IMessageListener listener) { 
    this.listener = listener; 
} 

Y en el método de biblioteca cuando un mensaje es recibido, que yo llamaría el método getMessage en ese objeto oyente

Este fue un ejemplo básico. Las bibliotecas más sofisticadas usarían métodos más complejos, como la implementación de colas de eventos, subprocesos, concurrencia, etc.

Editar: Y sí. este es el patrón del observador de hecho

Cuestiones relacionadas