Red de conocimiento informático - Conocimiento sistemático - Un breve análisis del procesamiento de eventos y respuestas rápidas en lenguaje Java

Un breve análisis del procesamiento de eventos y respuestas rápidas en lenguaje Java

El procesamiento de eventos es muy importante en la programación JAVA, especialmente cuando necesita personalizar eventos y diseñar JavaBeans. Tener una comprensión completa del proceso de procesamiento de eventos es muy útil para la programación.

Lo siguiente. es un ejemplo demostrativo para ilustrar el evento y su proceso de procesamiento

La composición de un evento

Si desea personalizar un evento, debe proporcionar un detector de eventos La interfaz y un evento clase de escucha en JAVA. La interfaz hereda la utilidad Java EventListener y la clase de evento hereda la utilidad Java EventObject. Se han proporcionado muchos eventos básicos en el entorno de programación y son muy convenientes de usar, pero debe comprenderlos en eventos personalizados.

El siguiente es el código de una clase de evento. La clase de evento puede proporcionar información sobre la clase monitoreada al controlador de usuario

import java util *; p>public class PropertyEvent extiende EventObject {

public PropertyEvent(){}

}

El siguiente es el código de la interfaz de escucha

importar java util *

interfaz pública PropertyListener extiende EventListener {

public void propertyChanged(PropertyEvent propertyEvent); Dos mecanismos de procesamiento de eventos

El siguiente es un breve análisis del proceso de manejo de eventos del código de clase monitoreado

import java util *

public class Exam { <; /p>

propiedad private int

//los oyentes se utilizan para almacenar objetos de escucha registrados

private Set oyentes= new HashSet()

public void addListener(PropertyListener propertyListener){

//los oyentes deben asegurarse de que solo un hilo pueda acceder a ellos

sincronizado(oyentes){

los oyentes agregan (propertyListener);

}

}

public void firePropertyChange(){

Iterador iterador;

sincronizado(oyentes){

//Pon el nombre de la clase en los oyentes en el iterador

iterador = new HashSet(erator();

}

//Crear clase de evento

PropertyEvent propertyEvent = new PropertyEvent()

while(iterator hasNext()){

P

ropertyListener propertyListener = (propertyListener) iterator next();

// Llama al controlador de eventos del usuario

propertyListener propertyChanged(propertyEvent);

 }

 }

Cuando el valor de la propiedad cambia, el procesamiento interno se realiza primero llamando al método firePropertyChange para generar un objeto de evento, y luego se llama al controlador de eventos del usuario usando el objeto de evento como parámetro

Uso del procesamiento de tres eventos

Uso básico

examen de examen público

examen addListener(this). );

Public void propertyChange(evento PropertyEvent){ }

Nota: el examen es el objeto monitoreado, este es el objeto de escucha, que es la clase actual que ha implementado el método de interfaz addListener.

Registrar la clase actual para los oyentes

Un objeto monitoreado puede tener múltiples objetos de escucha

exam addListener(listener

exam addListener); (oyente);

De esta manera, cuando la propiedad del examen cambie, se llamará a los controladores de actionListener y actionListener

Por supuesto, oyente y oyente deben ser clases que he implementado el método de interfaz

El objeto que se escucha también será llamado Puede ser una interfaz que implemente métodos

exam addListener(

new PropertyListener() {

//Proceso de manejo de eventos definido por el usuario

public void propertyChange(evento PropertyEvent){

 

 }

 ); lishixinzhi/Artículo/programa/Java/hx/201311/26740