Java Observable clearChanged()方法与示例

可观察类clearChanged()方法

  • clearChanged()方法在java.util包中可用。

  • clearChanged()方法表示此对象不再更改,换句话说,我们可以说它先前已将其最近更改通知所有观察者。

  • clearChanged()方法是一种非静态方法,只能使用类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • clearChanged()方法在要求更改对象时不会引发异常。

语法:

    public void clearChanged();

参数:

  • 它不接受任何参数。

返回值:

该方法的返回类型为void,不返回任何内容。

示例

//Java程序演示示例 
//clearChanged()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 clearChange() {        setChanged();
        System.out.println("clearChanged(): ");

        //通过使用clearChanged()方法isto-
        //完成的更改
        clearChanged();        notifyObservers();
    }
}

public class ClearChanged {
    //实现主要方法
    public static void main(String args[]) {
        Observed observed = new Observed();
        Observers obs = new Observers();
        observed.addObserver(obs);
        observed.setChange();
        observed.clearChange();
    }
}

输出结果

setChanged(): true
Obs is added
clearChanged():