行为设计模式包括:观察者模式。
1、观察者模式
观察者(Observer)模式允许你定义一种订阅机制, 可在对象状态改变或事件发生时通知多个“观察” 该对象的其他对象。这种模式有时又称作发布-订阅模式、模型-视图模式,比如顾客对商店里的苹果很感兴趣,他会每天到店里查看有没有优惠活动,这样其实很浪费时间,这种情况就可以使用观察者模式:对苹果感兴趣的顾客作为观察者来向商店订阅苹果的活动消息,当商店的苹果搞活动的时候就通知所有订阅的顾客,顾客自行处理该通知。
//抽象观察者 interface Observer { void response(); //订阅的事件发生,进行反应 } //具体观察者 class ConcreteObserver implements Observer { public void response() { System.out.println("观察者作出反应!"); } } class Subject { protected List<Observer> observers = new ArrayList<Observer>(); public void add(Observer observer) //增加观察者 { observers.add(observer); } public void remove(Observer observer) //删除观察者 { observers.remove(observer); } public void notifyObserver() //通知所有观察者 { for (Observer obs : observers) { obs.response(); } } }View Code