打字猴:1.700469196e+09
1700469196 //既然要观察,我发生改变了他也应该有所动作,通知观察者
1700469197
1700469198 public void notifyObservers(String context);
1700469199
1700469200 }
1700469201
1700469202 这是一个通用的被观察者接口,所有的被观察者都可以实现这个接口。再来看韩非子的实现类,如代码清单22-10所示。
1700469203
1700469204 代码清单22-10 被观察者实现类
1700469205
1700469206 public class HanFeiZi implements Observable,IHanFeiZi{
1700469207
1700469208 //定义个变长数组,存放所有的观察者
1700469209
1700469210 private ArrayList<Observer>observerList=new ArrayList<Observer>();
1700469211
1700469212 //增加观察者
1700469213
1700469214 public void addObserver(Observer observer){
1700469215
1700469216 this.observerList.add(observer);
1700469217
1700469218 }
1700469219
1700469220 //删除观察者
1700469221
1700469222 public void deleteObserver(Observer observer){
1700469223
1700469224 this.observerList.remove(observer);
1700469225
1700469226 }
1700469227
1700469228 //通知所有的观察者
1700469229
1700469230 public void notifyObservers(String context){
1700469231
1700469232 for(Observer observer:observerList){
1700469233
1700469234 observer.update(context);
1700469235
1700469236 }
1700469237
1700469238 }
1700469239
1700469240 //韩非子要吃饭了
1700469241
1700469242 public void haveBreakfast(){
1700469243
1700469244 System.out.println(“韩非子:开始吃饭了……”);
1700469245
[ 上一页 ]  [ :1.700469196e+09 ]  [ 下一页 ]