案例:观察者Observer对被观察者Observered进行监控,一旦被观察者发生变化,观察者发出提示
1.写观察者接口和类,一个接口IObserver和实现这个接口的Observer的类。
接口有一个方法:doSth(),表明观察者发现被观察者发生变化时,就发出提示
public interface IObserver {
public void doSth();
}
public class Observer implements IObserver {
/* 一旦被观察者发生变化,那么观察者就回应,发现被观察者变化了
*/
@Override
public void doSth() {
// TODO Auto-generated method stub
System.out.println("我知道被观察者发生变化了");
}
}
2.写被观察者接口和类,一个接口IObservered和Observered类。
public interface IObservered {
//被观察者是否发生变化
public void change();
}
public class Observered implements IObservered {
//被观察者是否改变
private Observer observer = new Observer();
@Override
public void change() {
// TODO Auto-generated method stub
System.out.println("被观察者发生了变化");
//通知观察者,观察者说发生了变化
this.observer.doSth();
}
}
3.主函数
//定义被观察者
Observered observered = new Observered();
//被观察者发生变化了
observered.change();