Java 创建事件(Event)、事件监听器(EventListener)、事件发布(publishEvent)详解和相关demo
在Java中,事件模型通常用于设计模式中,如观察者模式。事件可以用于通知系统中的其他部分发生了某些重要的事情。
事件(Event):通常是一个简单的Java对象,包含有关发生事情的信息。
事件监听器(EventListener):实现了EventListener
接口的对象,用于处理事件。
事件发布(publishEvent):将事件通知到系统中的其他组件。
以下是一个简单的例子,展示了如何定义事件、事件监听器以及如何发布事件:
import java.util.EventObject;
import java.util.EventListener;
// 定义事件
class MyEvent extends EventObject {
public MyEvent(Object source) {
super(source);
}
// 可以添加更多的事件相关信息
}
// 定义事件监听器
class MyEventListener implements EventListener {
public void onEvent(MyEvent event) {
// 处理事件
System.out.println("Event occurred: " + event.getSource());
}
}
// 事件发布器
class EventPublisher {
private MyEventListener listener;
public EventPublisher(MyEventListener listener) {
this.listener = listener;
}
public void publish(MyEvent event) {
listener.onEvent(event);
}
}
// 使用示例
public class EventExample {
public static void main(String[] args) {
MyEventListener listener = new MyEventListener();
EventPublisher publisher = new EventPublisher(listener);
MyEvent event = new MyEvent("Some data");
publisher.publish(event);
}
}
在这个例子中,我们定义了一个MyEvent
事件和MyEventListener
监听器。EventPublisher
类负责发布事件。在main
方法中,我们创建了一个监听器和一个发布器,并发布了一个事件。监听器接收到事件后,执行其onEvent
方法来处理事件。
评论已关闭