常用设计模式之观察者模式

什么是观察者模式?

观察者模式主要有两个角色,观察者和观察目标(多对一),当一个观察目标的状态发生改变时,其他观察者收到通知并自行进行更新;

例子

java的util类中就提供了Observable的轮子,可以直接使用;
java实现的Observable中有两个重要的变量:boolean changed,作为观察者的初始状态;
Vector obs,用于存储所有的观察者对象;

基本方法:

添加观察者 addObserver(Observer o)
删除观察者 deleteObserver(Observer o)
deleteObservers()
通知观察者 notifyObservers(Object arg)
notifyObservers()

todo:用观察者模式实现一个写手发布文章其它公众号,更新发布文章的功能(流程图)

留一个小问题:
Observable中用Vector来存储观察者对象,你知道Vector为什么是线程安全的吗?
https://www.cnblogs.com/iknow-manage/p/16607713.html

posted @ 2022-08-20 14:37  晚风学习空间  阅读(16)  评论(0编辑  收藏  举报