import java.util.Observable;
import java.util.Observer;
public class Observe
{
public static void mian(String args[])
{
int a=10;
BeingWatched watched=new BeingWatched();
Watcher1 watcher1=new Watcher1();
Watcher2 watcher2=new Watcher2();
watched.addObserver(watcher1);
watched.addObserver(watcher2);
watched.method(a);
}
}
class BeingWatched extends Observable
{
public void method(int x)
{
for(;x>=0;x--)
{
this.setChanged();
this.notifyObservers(x);//自动调用Observer中 update方法
}
}
}
class Watcher1 implements Observer
{
@Override
public void update(Observable o, Object arg)
{
System.out.println((Integer)arg);
}
}
class Watcher2 implements Observer
{
@Override
public void update(Observable o, Object arg)
{
Integer j=(Integer)arg;
if(j<=5)
System.out.println(j);
}
}
还没有评论,来说两句吧...