打字猴:1.700469519e+09
1700469519 public interface Observer{
1700469520
1700469521 //更新方法
1700469522
1700469523 public void update();
1700469524
1700469525 }
1700469526
1700469527 观察者一般是一个接口,每一个实现该接口的实现类都是具体观察者,如代码清单22-18所示。
1700469528
1700469529 代码清单22-18 具体观察者
1700469530
1700469531 public class ConcreteObserver implements Observer{
1700469532
1700469533 //实现更新方法
1700469534
1700469535 public void update(){
1700469536
1700469537 System.out.println(“接收到信息,并进行处理!”);
1700469538
1700469539 }
1700469540
1700469541 }
1700469542
1700469543 那其他模块是怎么来调用的呢?我们编写一个Client类来描述,如代码清单22-19所示。
1700469544
1700469545 代码清单22-19 场景类
1700469546
1700469547 public class Client{
1700469548
1700469549 public static void main(String[]args){
1700469550
1700469551 //创建一个被观察者
1700469552
1700469553 ConcreteSubject subject=new ConcreteSubject();
1700469554
1700469555 //定义一个观察者
1700469556
1700469557 Observer obs=new ConcreteObserver();
1700469558
1700469559 //观察者观察被观察者
1700469560
1700469561 subject.addObserver(obs);
1700469562
1700469563 //观察者开始活动了
1700469564
1700469565 subject.doSomething();
1700469566
1700469567 }
1700469568
[ 上一页 ]  [ :1.700469519e+09 ]  [ 下一页 ]