package kan.hui;
import java.util.Observable;
import java.util.Observer;
public class Subject extends Observable{
/**
* @param args
*/
public static void main(String[] args) {
Subject sbj = new Subject();
OneObserver one = new OneObserver();
TwoObserver two = new TwoObserver();
sbj.addObserver(one);
sbj.addObserver(two);
for (int i = 0 ;i<10;i++){
sbj.setChanged();
sbj.notifyObservers("监控异常出现!"+ i);
}
}
static public class OneObserver implements Observer{
@Override
public void update(Observable o, Object arg) {
System.out.println("OneObserver捕获异常"+ (String)arg);
}
}
static public class TwoObserver implements Observer{
@Override
public void update(Observable o, Object arg) {
System.out.println("TwoObserver捕获异常"+ (String)arg);
}
}
}
结果;
TwoObserver捕获异常监控异常出现!0
OneObserver捕获异常监控异常出现!0
TwoObserver捕获异常监控异常出现!1
OneObserver捕获异常监控异常出现!1
TwoObserver捕获异常监控异常出现!2
OneObserver捕获异常监控异常出现!2
TwoObserver捕获异常监控异常出现!3
OneObserver捕获异常监控异常出现!3
TwoObserver捕获异常监控异常出现!4
OneObserver捕获异常监控异常出现!4
TwoObserver捕获异常监控异常出现!5
OneObserver捕获异常监控异常出现!5
TwoObserver捕获异常监控异常出现!6
OneObserver捕获异常监控异常出现!6
TwoObserver捕获异常监控异常出现!7
OneObserver捕获异常监控异常出现!7
TwoObserver捕获异常监控异常出现!8
OneObserver捕获异常监控异常出现!8
TwoObserver捕获异常监控异常出现!9
OneObserver捕获异常监控异常出现!9