观察者设计模式

观察者设计模式定义:定义了对象之间的一对多依赖,这样一来当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。java伪代码实现如下:
import java.util.ArrayList;

public class SubjectImpl implements Subject{//主题是一个接口用于绑定观察者,解绑观察者以及通知
	
	ArrayList<Observer> observers = new ArrayList<Observer>(); //用于保存观察者Observer是一个接口定义观察者要实现的方法
	//绑定观察者
	@Override
	public void registerObserver(Observer o) {
		observers.add(o);
	}
	
	//解绑观察者
	@Override
	public void removeObserver(Observer o) {
		observers.remove(o);
	}
	//通知观察者
	@Override
	public void notifyObserver() {
		for(Observer o :observers){
			o.change();	
		}
	}

}


观察者设计模式实现了两个对象间的解耦。主题和观察者都只需要根据自己的接口规范进行编程即可。

猜你喜欢

转载自chen-sai-201607223902.iteye.com/blog/2361071