观察者模式(Observer)完美的将观察者和被观察的对象分离开。举个例子,用户界面可以作为一个观察者,业务数据是被观察者,用户界面观察业务数据的变化,发现数据变化后,就显示在界面上。面向对象设计的一个原则是:系统中的每个类将重点放在某一个功能上,而不是其他方面。一个对象只做一件事情,并且将他做好。观察者模式在模块之间划定了清晰的界限,提高了应用程序的可维护性和重用性。
通俗地讲就是一个观察者和一个被观察者,被观察者可以管理观察者,操作观察者的对象。经典的例子就是GUI界面编程模式中的监听模式。
就拿按钮调用Add ActionListener监听器来说,按钮Button相当于被观察者,而事件Event可以看做是一个个观察者,按钮通过添加一个个Event(观察者)来实现对自身方法的调用。
通俗地讲就是一个观察者和一个被观察者,被观察者可以管理观察者,操作观察者的对象。经典的例子就是GUI界面编程模式中的监听模式。
就拿按钮调用Add ActionListener监听器来说,按钮Button相当于被观察者,而事件Event可以看做是一个个观察者,按钮通过添加一个个Event(观察者)来实现对自身方法的调用。