Subject:
import java.util.Observable;
public class SimpleSubject extends Observable{
private SimpleObserver observer = null;
private String state = null;
SimpleSubject(){
observer = new SimpleObserver();
this.addObserver(observer);
System.out.println("Subject initialed ok");
}
public String getState(){
return state;
}
public void setState(String s){
this.state = s;
this.setChanged();
this.notifyObservers();
}
}
Observer:
import java.util.Observable;
public class SimpleObserver implements java.util.Observer{
public void update(Observable o, Object arg){
System.out.println("Subject changed....");
}
}
main:
public class Test {
public static void main(String[] args) {
SimpleSubject ss = new SimpleSubject();
ss.setState("new state get");
}
}
Notion: Don't forget to use setChanged when some fields changes, and use notifyObservers when some events happen.
333

被折叠的 条评论
为什么被折叠?



