JAVA中的事件驱动编程怎么理解

Python023

JAVA中的事件驱动编程怎么理解,第1张

事件驱动

那么什么是事件呢?比如说抬手,吃苹果,玩手机,打英雄联盟,说白了就是一个动作

那么驱动是什么呢?比如说抬起手来看看手中的手机有没有消息,玩手机看到一条很有意思的说说,打英雄联盟输了,说白了就是事件产生的后续结果。

那么事件驱动就是一个因果关系,我触发了什么,什么就会执行,如果有个中间人,那么就会告诉中间人,我干了什么,比如说Java中的按钮的点击事件,就是这样的。希望以上对你的理解有所帮助。

java语言编写事件处理程序主要有两种方案:一个是程序重设方法handleEvent(Event),采用这个方案的程序工作量稍大。另一个是程序实现一些系统设定的接口。java按事件类型提供多种接口,作为监视器对象的类需要实现相应的接口,即实现响应事件的方法。当事件发生时,系统内设的handleEvent(Event evt)方法就自动调用监视器的类实现的响应事件的方法。

java.awt.event包中用来检测并对事件做出反应的模型包括以下三个组成元素:

(1)源对象:事件发生在这个组件上,它与一组侦听该事件的对象保持着联系。

(2)监视器对象:是一个实现预定义的接口的类的一个对象,该对象的类要提供对发生的事件作处理的方法。

(3)事件对象:包含描述当事件发生时从源传递给监视器的特定事件的信息。

public class HandleEventextends JFrame{ //HandleEvent 继承JFrame

public HandleEvent(){

add(panel)//JFrame中包含panel ,panel中包含jbtOK

OKListenerClasslistener1 = new OKListenerClass()//实例化监听器listener1

CanelListenerClasslistener2 = new CanelListenerClass()

jbtOK.addActionListener(listener1) //在jbtOK中添加监听器listener1

jbtCancel.addActionListener(listener2)

}

class OKListenerClass implementsActionListener{//OKListenerClass 实例ActionListener

public voidactionPerformed(ActionEvent e){

System.out.println("OK buttonclicked")

}

}

class CanelListenerClassimplements ActionListener{

public voidactionPerformed(ActionEvent e){

System.out.println("Canel buttonclicked")

}

}