《Head First设计模式》 - 观察者模式
来源:互联网 发布:广东高考难度 知乎 编辑:程序博客网 时间:2024/05/20 17:27
观察者模式使用非常广泛,在《head first设计模式》中放在第一位,该模式必须掌握。
该模式又叫发布/订阅模式;将观察者和被观察者分离。
<span style="font-family: Arial, Helvetica, sans-serif;">package observe;</span>
/** * 被观察者接口 * * @author ZHEN.L * @date 2016.04.12 * */public interface Observable {void addObserve(Observe o);void removeObserve(Observe o);void notifyObserve();}
package observe;import java.util.ArrayList;import java.util.List;/** * 被观察者实现 * * @author zhen.l * @date 2016.04.12 * */public class NewsObservale implements Observable {private String w;private String h;private List<Observe> observes = new ArrayList<Observe>();public void addObserve(Observe o) {observes.add(o);}public void removeObserve(Observe o) {observes.remove(o);}public void notifyObserve() {for (Observe o : observes) {o.update(w, h);}}public String getW() {return w;}public void setW(String w) {this.w = w;}public String getH() {return h;}public void setH(String h) {this.h = h;}public static void main(String[] args) {NewsObservale no = new NewsObservale();W w = new W();H h = new H();no.addObserve(w);no.addObserve(h);no.setH("1");no.setW("2");no.notifyObserve();System.out.println(" --------- ");no.removeObserve(h);no.notifyObserve();}}
package observe;/** * 观察者接口 * * @author ZHEN.L * @date 2016.04.12 * */public interface Observe {void update(String w, String h);}
package observe;/** * 具体观察者 * * @author HXZQ-SW * */public class W implements Observe {public void update(String w, String h) {System.out.println("2.w=" + w + " , h=" + h);}}
package observe;/** * 具体观察者 * * @author ZHEN.L * @DATE 2016.04.12 * */public class H implements Observe {public void update(String w, String h) {System.out.println("1.w = " + w + " , h=" + h);}}
0 0
- head first 设计模式:观察者模式1
- Head First设计模式-观察者模式
- 《Head First 设计模式》观察者模式
- Head First 设计模式笔记--观察者模式
- 《Head First 设计模式》之观察者模式
- Head First 设计模式2 观察者模式
- 《Head First 设计模式》之观察者模式
- <Head First 设计模式>:观察者模式--Weather
- Head First设计模式—观察者模式
- 【Head First设计模式-读书笔记】观察者模式
- Head First设计模式---策略、观察者模式
- Head First 设计模式-观察者模式
- 《Head First设计模式》 - 观察者模式
- head first设计模式之观察者模式
- Head First-设计模式:观察者模式
- head first 设计模式之---------观察者模式
- 读书笔记---Head First 设计模式--- 观察者模式
- Head First设计模式:观察者模式
- Window系统下CMD命令大全(二)
- XML解析小记之防止数据过长被截断
- redis中数据持久化(四)
- HDU 4499 Cannon
- JavaSE学习笔记_19:Java-GUI
- 《Head First设计模式》 - 观察者模式
- "多米诺骨牌"问题的动态规划算法
- Java NIO - CountDownLatch
- VC实现当前程序退出后重启
- BZOJ 4010: [HNOI2015]菜肴制作
- 阶乘之和
- 第七周上机实践项目3:文件组织多个程序类
- Error C2893
- 剑指offer系列之38:判断是否是平衡二叉树