Java中的EventListener接口用于处理来自事件源(Event Source)的事件。事件对象(Event Object)是事件监听器接收到的参数,它包含了与特定事件相关的信息。事件对象通常包含以下信息:
- 事件源(EventSource):事件发生的对象。例如,按钮点击事件的事件源可能是按钮组件。
- 事件类型(Event Type):事件的类别,通常是一个字符串,表示发生了什么类型的事件。例如,"click"表示点击事件。
- 事件属性(Event Properties):与事件相关的其他信息,例如鼠标点击的位置、键盘按键状态等。这些信息可能因事件类型而异。
在Java中,事件对象通常是实现了java.util.EventObject
接口或其子接口的类。例如,java.awt.event
包中的许多事件类都实现了java.awt.event.InputEvent
接口,该接口扩展了java.util.EventObject
接口。
以下是一个简单的Java事件监听器示例,用于处理按钮点击事件:
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; public class EventListenerExample { public static void main(String[] args) { JFrame frame = new JFrame("Event Listener Example"); JButton button = new JButton("Click me!"); button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // 事件对象(e)包含了事件源(button)和事件类型(ACTION_PERFORMED) System.out.println("Button clicked!"); } }); frame.add(button); frame.setSize(300, 200); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }
在这个示例中,当用户点击按钮时,actionPerformed
方法将被调用。事件对象e
包含了事件源(按钮)和事件类型(ACTION_PERFORMED
)。