java中的事件监听是怎么回事

Python09

java中的事件监听是怎么回事,第1张

不是通过线程实现的,它是通过一种注册--通知机制实现的。在java的设计模式中,有一种模式叫:观察者模式,和这个类似。举个例子,本例子是一个简单的监听当数据发生变化时要做的操作。 1,我们先定义一个接口,可以让多个监听者实现 public interface IDataListen {public void update(Object event,Object msg)}2,实现一监听者 public class DataListen implements IDataListen{ @Override public void update(Object event, Object arg) { // TODO Auto-generated method stub System.out.println("数据发生了变化") }}3,被监听者 public class DataManager{ private List<IDataListen>listenList = new ArrayList<>() public void notifyListen(Object event,Object msg){ for(IDataListen dataListen : listenList){ dataListen.update(null, null) } } public void addListen(IDataListen dataListen){ listenList.add(dataListen) } public void updateData(Object msg){ this.notifyListen(null, msg) } public static void main(String[] args) { DataManager dataManager = new DataManager() IDataListen dataListen1 = new DataListen() ...

java中的事件监听不是通过线程实现的,它是通过一种注册--通知机制实现的。在java的设计模式中,有一种模式叫:观察者模式,和这个类似。

举个例子,本例子是一个简单的监听当数据发生变化时要做的操作:

1,我们先定义一个接口,可以让多个监听者实现

2、实现一监听者

3、被监听者

4、main方法里面是监听的应用。这样就可以监听DataManager中的updateData行为了,当有数据发生变化时,就可以即时被监听者收到。