Java Observable setChanged()方法与示例
可观察类setChanged()方法
setChanged()方法在java.util包中可用。
setChanged()方法用于将此Observable对象状态设置为已更改。
setChanged()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
setChanged()方法在设置更改状态时不会引发异常。
语法:
protected void setChanged();
参数:
它不接受任何参数。
返回值:
该方法的返回类型为void,不返回任何内容。
示例
//Java程序演示示例
//setChanged()Observable的void方法的说明
import java.util.*;
//实现观察者类
class Observers implements Observer {
public void update(Observable obj, Object ob) {
System.out.println("Obs is added");
}
}
//实施观察类
class Observed extends Observable {
//函数调用setChanged()
void setChange() { setChanged();
System.out.println("setChanged(): " + hasChanged()); notifyObservers();
}
//函数调用
void unsetChange() {
System.out.println("unsetChanged(): " + hasChanged()); notifyObservers();
}
}
public class SetChanged {
//实现主要方法
public static void main(String args[]) {
Observed observed = new Observed();
Observers obs = new Observers();
observed.addObserver(obs);
observed.setChange();
observed.unsetChange();
}
}输出结果
setChanged(): true Obs is added unsetChanged(): false