观察者模式就是两个类的使用:
public interface Observer{
void update(Observable observable,Object data);
}
public class Observable{
add deleteObserver(Observer observer);
notifyObservers();//遍历调用update方法
}
就像我们平时写监听一样,不过这次是把listener加入集合中使用。
public class AA{//可以看成被观察者Observable
public void add(Observer ov){
list.add(ov);
}
public void notifyObservers(){
//遍历list调用.update方法
}
public interface MyObserver{
void update(Observable observable,Object data);
}
}
public class BB implements MyObserver{
public void updata(){
syso:观察者调用的方法
}
}
一句话总结:观察者模式可以不准确的理解为,把监听放入集合中遍历调用,达到“观察”的效果。或者叫“订阅”的效果