首页 > 代码库 > java实现观察者模式
java实现观察者模式
最近使用java实现了设计模式中的观察者模式,源码如下:
package cn.demo;public class TestObersver { public static void main(String[] args) { Person person=new Person(); //声明被观察者 System.err.println("person:"+person); person.addPersonListener(new PersonListener(){ public void running(PersonEvent pe) { System.err.println("正在观察的人:"+pe.getSource()); System.err.println("他正在跑步"); } }); person.run(); }}class Person{ private PersonListener pl; public void addPersonListener(PersonListener pl){ this.pl=pl; } public void run(){ if(pl!=null){ pl.running(new PersonEvent(this)); } System.err.println("正在跑步...."); }}interface PersonListener{ void running(PersonEvent pe);}class PersonEvent{ private Object obj; public PersonEvent(Object obj){ this.obj=obj; } public Object getSource(){ return obj; }}
代码执行后为:
如此,便实现了一个简单的观察者模式。
java实现观察者模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。