码迷,mamicode.com
首页 > 编程语言 > 详细

java实现观察者模式

时间:2015-01-23 18:11:55      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:

  最近使用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实现观察者模式

标签:

原文地址:http://www.cnblogs.com/bingwenwuhen/p/4244510.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!