Java-马士兵设计模式学习笔记-观察者模式-OOD 线程 改进

1.概述

由于上一个文章《Java OOD 线程》中的线程是父类主动监听childe,比较耗资源,现改进为childe类醒来后主动联系父类

2.代码

Test.java

class Child implements Runnable {
	
	private Dad dad;
	
	public Child(Dad dad) {
		this.dad = dad;
	}

	public void wakeUp(){
		dad.feed(this);
	}

	@Override
	public void run() {
		try {
			Thread.sleep(3000);
		} catch (Exception e) {
			e.printStackTrace();
		}
		wakeUp();
	}
}

class Dad {

	void feed(Child c) {
		System.out.println("feed child");
	}
	
}

public class Test {

	public static void main(String[] args) {
		Dad d = new Dad();
		Child c = new Child(d);
		new Thread(c).start();
	}
}

  

3.运行结果

posted @ 2015-06-19 11:50  shamgod  阅读(299)  评论(0编辑  收藏  举报
haha