zoukankan      html  css  js  c++  java
  • 设计模式之Observer

    基本概念

    观察者模式中有最基本的两个角色:Observable和Observer。涉及到的基本操作有:

    1. Observable在Observer中订阅,要接受消息。
    2. Observable取消注册(或者Observer将其删除)。
    3. Observer有了消息之后通知Observable。

    总的来看还是比较简单的。Observer中保存所有的Observable,然后在需要通知的时候调用notifyObservers来实现。下面是观察者模式的类图:

    对于java中的观察者模式框架下面给出一个例子:

    import java.util.Observable;
    import java.util.Observer;
    class Watched extends Observable{
    public void count(int num){
    for(; num >= 0; num--){
    setChanged();
    notifyObservers(num);
    }
    }
    }

    class Watchter implements Observer{
    @Override
    public void update(Observable o, Object arg) {
    System.out.println("Observer get:"+(Integer)arg);
    }
    }

    public class Test {
    public static void main(String[] arg){
    Watched watched = new Watched();
    Watchter watcher = new Watchter();

    watched.addObserver(watcher);
    watched.count(10);
    }
    }
  • 相关阅读:
    用node探究http缓存
    静态资源增量更新,转自美团
    前端调试相关
    写完此篇,开始新的征程!
    SSM整合
    SpringMVC
    Mybatis
    设计模式之代理模式
    设计模式之工厂模式
    设计模式之单例模式最佳实现方式
  • 原文地址:https://www.cnblogs.com/ggzwtj/p/2215188.html
Copyright © 2011-2022 走看看