设计模式之观察者模式
2015-10-21 09:37
330 查看
public class ObserverPattern { public ObserverPattern() { Teacher teacher = new Teacher(); Student student = new Student(); student.addObserver(teacher); student.exam(80); } /** * 被观察者 */ class Student extends Observable { String name = "WCY"; int score; void exam(int score) { setScore(score); setChanged(); notifyObservers(getScore()); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } } /** * 观察者 */ class Teacher implements Observer { @Override public void update(Observable o, Object arg) { String name = ((Student) o).getName(); int score = (int) arg; System.out.println("name:" + name + ",score:" + score); } } }
相关文章推荐
- EBS密码安全的几个参数
- 进程切换&&中断&&异常&系统调用execve()函数
- matlab实现将彩色图像(R,G,B)色分量的直方图匹配,并计算其相关性
- 5个好用的开源数据挖掘软件
- ELKStack读取网络数据
- ProgressDialog进度对话框初识
- 设计模式之适配器模式
- 修改linux内核开机logo并居中全屏显示
- 银行卡号验证js(Luhn算法)
- jquery通过输入框实时查找列表值
- Linux 常用基础命令
- HttpClient 模拟登陆百度 2015.10.21 JAVA
- 快速排序与 二分查找
- log4j 日志限制大小 拆分成30个 不按日期分日志 按大小拆分 按日期产生
- OpenGL ES的性能范围(OpenGL ES2.0官方文档)
- Android 实现录音和监听声音大小实现话筒动画效果
- ReactiveCocoa进阶篇
- DUILIB创建菜单窗口
- C#连接ACCESS 配置web.config
- oracle copy long