java事件

Java事件

Java事件常用于图形界面GUI编程中,本质是一种观察者模式的实现。

当你点击一个按钮,界面上弹出一个文本框,上面写着“按钮被按下”。

上面的GUI流程就是事件的显像化,可以被抽象成下面的事件模型

1
2
3
4
5
6
7
8
9
用户点击按钮

产生 Event

事件源(Event Source)

监听器(Event Listener)

事件处理代码

由此可以总结出事件三要素

  • 事件(Event)- 事件本身,Java中对应ActionEvent
  • 事件源(Event Source) - 事件的源头,这里是 用户按下的按钮btn
  • 事件监听器(Event Listener) - 包含回调函数,Java中基类为ActionListener

代码实现

1
2
3
// 初始化事件源,并注册事件监听器
JButton btn = new JButton();
btn.addActionListener(new MyListener());
1
2
3
4
5
6
7
// 事件监听器写法
class MyListener implements ActionListener { // 继承自统一基类ActionListener
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("按钮被点击了");
}
}

ActionEvent

JAva中事件对应的类是 ActionEvent。提下几个常见的 成员:

  1. getSource()

    获取事件源,如:

    1
    JButton btn = (JButton)e.getSource(); // 你如果知道事件源是什么的话就可以强转,比如JButton。getSource() 返回值是 Object
  2. 好像其他也不常用了……

ActionListener

Java中事件监听器对应的基类接口。只包含一个方法 actionPerformed

1
2
3
public interface ActionListener extends EventListener {
public void actionPerformed(ActionEvent e);
}

实现自己的事件监听器就派生这个接口,然后重写 actionPerformed 这个回调函数,里面写自己的事件处理逻辑即可。


java事件
https://becks723.github.io/2026/06/21/java事件/
作者
Becks723
发布于
2026年6月21日
许可协议