1、什么是监听器模式?
小明是犯罪嫌疑人,--事件对象
小王是监控他的警察,--监听者
一旦发现小明逃离指定的区域,--事件源
则立马报告警察中心采取相应行动。
2、如何用程序实现?
Class XiaoMing {
private List<Listener> listeners; // 一堆监听者,当前只有一个警察监听小王
void runAway(){
System.out.println("准备逃跑...");
// 一旦发生逃离(及runAway被调用)
// 出发监听
for(Listener listener:listeners){
listener.notice(new Event());// 把监听到的东西,以打包的形式告诉各端监听终端
}
}
}
3、程序的本质
a、所有的监听者实现同一个监听接口
b、同一个事件源继承同一个Event
c、最终监听到采取措施的对象是Event,实现不同的业务处理逻辑
注:如果各位过客,看到此篇能写出监听器模式的代码,那恭喜各位,已经掌握了监听者模式的精髓了