public class Test {
//被观察者对象
public static void main(String[] args) {
TreeData treeData = new TreeData();
treeData.setName("数据1");
treeData.setNum(3);
TreeObserver treeObserver = new TreeObserver();
treeData.addObserver(treeObserver);
treeData.setNum(6);
}
//观察者
static class TreeData extends Observable{
private int num = 0;
private String name = "";
public String getName( ) {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getNum( ) {
return num;
}
public void setNum(int num) {
this.num = num;
setChanged();
notifyObservers(this);
}
}
static class TreeObserver implements Observer{
@Override
public void update(Observable o, Object arg) {
TreeData treeData = (TreeData)arg;
System.out.println(treeData.getName()+"数量发送了改变:"+treeData.getNum());
}
}