急!关于java中Observer的一道题目

来源:百度知道 编辑:UC知道 时间:2024/06/15 02:23:42
试着填充下面的代码,实现匿名的内部类。
package chapt5;

import java.util.Observable;
import java.util.Observer;

public class MyObservable extends Observable {
String info = "";
public MyObservable (String info) {
this.info = info;
// add observer 2
this.addObserver(/* add your code here*/);
// add observer 1
this.addObserver(/* add your code here*/);
}

public static void main(String[] args) {
MyObservable obs = new MyObservable ("My MyObservable");
obs.setChanged();
obs.notifyObservers();
}
}
要求只能在/*add your code here*/处添加代码,使得程序执行结果为:(顺序可变)
Observer 1 updated for <My MyObservable>
Observer 2 updated for <My MyObservable>

完整代码如下:

package chapt5;

import java.util.Observable;
import java.util.Observer;

public class MyObservable extends Observable {
String info = "";
public MyObservable (String info) {
this.info = info;
// add observer 2
this.addObserver( new Observer(){
// 自己实现一个 Observer
public void update(Observable arg0, Object arg1) {
System.out.println("Observer 2 updated for <"+MyObservable.this.info+">");
}
}
/* add your code here*/);

// add observer 1
this.addObserver(new Observer(){
// 自己实现一个 Observer
public void update(Observable arg0, Object arg1) {
System.out.println("Observer 1 updated for <"+MyObservable.this.info+">");
}
}
/* add your code here*/);
}

public static void main(String[] args) {
MyObserv