1700468910
this.isHavingBreakfast=isHavingBreakfast;
1700468911
1700468912
}
1700468913
1700468914
public boolean isHavingFun(){
1700468915
1700468916
return isHavingFun;
1700468917
1700468918
}
1700468919
1700468920
public void setHavingFun(boolean isHavingFun){
1700468921
1700468922
this.isHavingFun=isHavingFun;
1700468923
1700468924
}
1700468925
1700468926
}
1700468927
1700468928
其中有两个getter/setter方法,这个就没有在类图中表示出来,比较简单,通过isHavingBreakfast和isHavingFun这两个布尔型变量来判断韩非子是否在吃饭或者娱乐,韩非子属于被观察者,那还有观察者李斯,我们来看李斯的接口,如代码清单22-3所示。
1700468929
1700468930
代码清单22-3 抽象观察者
1700468931
1700468932
public interface ILiSi{
1700468933
1700468934
//一发现别人有动静,自己也要行动起来
1700468935
1700468936
public void update(String context);
1700468937
1700468938
}
1700468939
1700468940
李斯这类人比较简单,一发现自己观察的对象发生了变化,比如吃饭、娱乐,自己立刻也要行动起来,怎么行动呢?如代码清单22-4所示。
1700468941
1700468942
代码清单22-4 韩非子
1700468943
1700468944
public class LiSi implements ILiSi{
1700468945
1700468946
//首先李斯是个观察者,一旦韩非子有活动,他就知道,他就要向老板汇报
1700468947
1700468948
public void update(String str){
1700468949
1700468950
System.out.println(“李斯:观察到韩非子活动,开始向老板汇报了……”);
1700468951
1700468952
this.reportToQiShiHuang(str);
1700468953
1700468954
System.out.println(“李斯:汇报完毕……\n”);
1700468955
1700468956
}
1700468957
1700468958
//汇报给秦始皇
1700468959
[
上一页 ]
[ :1.70046891e+09 ]
[
下一页 ]