给我写个Java监听器案例
时间: 2023-05-26 18:06:21 浏览: 104
Java监听器(Listener)是一种常用的 Java 设计模式,通常用于在某些特定事件发生时执行特定的操作。
下面是一个 Java 监听器的简单案例:
```java
import java.util.EventListener;
// 定义一个事件监听器接口
public interface ButtonClickListener extends EventListener {
void buttonClicked();
}
// 定义一个按钮类,它会在被点击时触发事件
public class Button {
private ButtonClickListener listener;
public void setButtonClickListener(ButtonClickListener listener) {
this.listener = listener;
}
public void click() {
// 当按钮被点击时,调用 listener 的 buttonClicked 方法
if (listener != null) {
listener.buttonClicked();
}
}
}
// 定义一个具体的事件监听器,它实现了 ButtonClickListener 接口
public class ButtonClickHandler implements ButtonClickListener {
public void buttonClicked() {
// 在按钮被点击时执行的操作
System.out.println("Button clicked!");
}
}
// 使用 Button 类和 ButtonClickHandler 类
public class Main {
public static void main(String[] args) {
Button button = new Button();
ButtonClickHandler handler = new ButtonClickHandler();
// 设置按钮的监听器为 handler
button.setButtonClickListener(handler);
// 点击按钮,会触发 buttonClicked 事件
button.click();
}
}
```
在这个案例中,ButtonClickListener 接口定义了一个 buttonClicked 方法,表示当按钮被点击时执行的操作。Button 类定义了一个 listener 字段,用于保存当前设置的监听器。当调用 Button 类的 click 方法时,会调用 listener 的 buttonClicked 方法
阅读全文