您的位置:首页 > 其它

设计模式学习笔记(二)- -观察者模式

2017-11-24 11:08 176 查看
[同系列文章]

1.设计模式学习笔记(一)- -策略模式

我又来了,续更ヾ(◍°∇°◍)ノ゙,接下来的内容是观察者模式的学习笔记

以下正文ヽ( ̄▽ ̄)ノ)

观察者模式

简要概括:书本以“气象站”为例,气象站–>天气数据对象–>布告板。其中,气象站更新数据的时候会通知天气数据对象更新数据,而天气数据对象则会将收到数据会通知N个布告板更新显示。这种“消息持有者”通知多个“消息接收者”的情况,可以进一步抽离为“观察者”模式。简单的说就是一对多的关系。

上图:



简要的代码:

1.原则,面向接口开发,so,写两个接口,一个“主题”(在Java里叫做:被观察者Observable),另外一个叫做“观察者”。

public interface Subject{
public void registerObserver();//注册
public void removeObserver();//移除
public void notifyObservers();//通知观察者们
}

public interface Observer{
public void update(); //更新
}


2.然后实现这两个接口,超简单。

public class ConcreteSubject implements Subject{

public void registerObserver(){
//注册
}

public void removeObserver(){
//移除

public void notifyObservers(){
//通知观察者们
}
}
public class ConcreteObserver implements Observer{

public void update(){
//更新
}
}


3.测试

....
....
纳尼,被省略了?那...ni自己写吧2333


4.结束

嘤嘤嘤,文章这么短,莫非..?ε≡٩(๑>₃<)۶

其实重点就在于理解“一对多”的关系,搞明白了,你就懂得了所谓的观察者和被观察者,成功入门~~~好好看书,frighting!

原则:

1.为交互对象之间的松耦合设计而努力

2.见下章:) 设计模式学习笔记(三)–装饰者模式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  设计模式