观察者设计模式总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了观察者设计模式总结相关的知识,希望对你有一定的参考价值。

1.观察者(observer)--订阅者

update 

/**
 * 观察者
 * */
public class Coder implements Observer{
    
    private String name;
    public Coder(String name){
        this.name=name;
        print("订阅者名字--"+this.name);
    }

2.被观察者(observable)--发布者

 必要条件: 设置状态发生变化,然后根据变化进行通知notify

/**
 * 
 * 被观察者
 * **/
public class TechCto extends Observable{
    
    public void publishContent(String content){
        setChanged();//设置状态发生
        this.notifyObservers(content);//调用自身的通知
    }
    

}

主函数:

public static void main(String[] args) {
        System.out.println("测试设计模式------------------------------------");
        //被观察者(发布者)
        TechCto cto =new TechCto();
        //观察者(订阅者)
        Coder coder1=new Coder("feifei");
        Coder coder2=new Coder("huahua");
        //订阅者注册到发布者上面
        cto.addObserver(coder2);
        cto.addObserver(coder1);
        //发布信息
        cto.publishContent("yumenle");
    }

测试结果:

测试设计模式------------------------------------
订阅者名字--feifei
订阅者名字--huahua
feifei   yumenle   更新成功
huahua   yumenle   更新成功

 

以上是关于观察者设计模式总结的主要内容,如果未能解决你的问题,请参考以下文章

观察者模式

23种设计模式归纳总结——行为型

23种设计模式归纳总结——行为型

23种设计模式归纳总结——行为型

JS设计模式-观察者模式

观察者模式总结