Java设计模式之观察者模式
来源:互联网 发布:航天信息软件下载 编辑:程序博客网 时间:2024/06/05 12:48
一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知,此种模式通常被用来实现事件处理系统
最常见的观察者模式就是我们经常使用的事件监听器上
我们使用类图来表示观察者模式的关系:
根据类图,同样,我们要实现观察者模式,也要有两个接口,一个接口就是观察者的接口,一个接口就是被观察者的接口,根据,具体的类,即老师为观察者,学生为被观察者,分别来实现Watcher和Observer这两个接口,
下面我们分别创建Watcher这个接口和Observer这个接口:
观察者Watcher:
public interface Watcher {public void addObserver(Observer obs);public void removeObserver(Observer obs);public void notifys(String msg);}
被观察者Observer:
public interface Observer {public void reciveMsg(String msg);}
然后,我们在创建一个Teacher类来实现Watcher这个接口,再创建一个Student类来实现Observer这个接口:
Teacher类:public class Teacher implements Watcher{private ArrayList<Observer> list = new ArrayList<Observer>();public void addObserver(Observer obs) {list.add(obs);}public void removeObserver(Observer obs) {list.remove(obs);}public void notifys(String msg) {for (Observer obs : list) {obs.reciveMsg(msg);}}}
Student类:
public class Student implements Observer{private String name;public Student(String name) {this.name = name;}public void reciveMsg(String msg) {System.out.println(name+"收到一条消息:"+msg);}}
0 0
- java设计模式之“观察者设计模式”
- Java设计模式之观察者设计模式
- 《java设计模式》之观察者设计模式
- Java设计模式之观察者
- Java设计模式之观察者
- Java设计模式之Observer(观察者)模式
- Java设计模式之Observer 观察者模式
- Java设计模式之Observer-观察者模式
- java 设计模式之二-观察者模式
- Java设计模式之观察者模式
- java设计模式之观察者模式
- java设计模式之观察者模式Observer
- java设计模式之观察者模式
- Java设计模式之观察者模式
- JAVA设计模式之观察者模式2
- java与设计模式之观察者模式
- Java--设计模式之观察者模式
- java设计模式之观察者模式
- python3中安装easygui的问题解决
- SRVCTL 中failover_method 解释
- 处理js跨域问题方法汇总
- 数据库操作
- 在linux下如何判断是否已经安装某个软
- Java设计模式之观察者模式
- spring mvc @ResponseBody/@RequestBody 配值action直接把对象输入json格式输入到前端相关配置
- Google Gson的使用方法,实现Json结构的相互转换
- git学习记录1
- UIGraphicsBeginImageContext 和 UIGraphicsBeginImageContextWithOptions
- MySQL索引原理及慢查询优化
- 那些写过的页面
- 收起左侧 [Android界面] 左右slidingMenu+iewpager冲突
- ORACLE OEM