observable
可观察的类deleteObserver()方法 (Observable Class deleteObserver() method)
deleteObserver() method is available in java.util package.
deleteObserver()方法在java.util包中可用。
deleteObserver() method is used to remove the given observer (obs) from the set of observers of this Observable object.
deleteObserver()方法用于从此Observable对象的观察者集中删除给定的观察者。
deleteObserver() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
deleteObserver()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
deleteObserver() method does not throw an exception at the time of deleting an observer.
deleteObserver()方法在删除观察者时不会引发异常。
Syntax:
句法:
public void deleteObserver(Observer obs);
Parameter(s):
参数:
Observer obs – represents the observer to be removed from the set.
Observer obs –代表要从集合中删除的观察者。
Return value:
返回值:
The return type of the method is void, it returns nothing.
该方法的返回类型为void ,不返回任何内容。
Example:
例:
// Java program to demonstrate the example
// of void deleteObserver(Observer obs) method of Observable
import java.util.*;
// Implement Observers class
class Observers_1 implements Observer {
public void update(Observable obj, Object ob) {
System.out.println("Obs1: ");
}
}
class Observers_2 implements Observer {
public void update(Observable obj, Object ob) {
System.out.println("Obs2: ");
}
}
// Implement Observed Class
class Observed extends Observable {
// Function call
void deleteObs() {
setChanged();
// By using notifyObservers() method is
// to notify all the observers that are
// implemented
notifyObservers();
}
}
public class DeleteObservers {
// Implement Main Method
public static void main(String args[]) {
Observed observed = new Observed();
Observers_1 obs1 = new Observers_1();
Observers_2 obs2 = new Observers_2();
observed.addObserver(obs1);
observed.addObserver(obs2);
// By using countObservers() method is
// to return the number of observers
// in this object
int count_obs = observed.countObservers();
System.out.println("observed.countObservers(): " + count_obs);
observed.deleteObs();
// By using deleteObserver() method is used
// delete the given observer if exists
observed.deleteObserver(obs2);
count_obs = observed.countObservers();
System.out.println("observed.deleteObserver(obs2): " + count_obs);
observed.deleteObs();
}
}
Output
输出量
observed.countObservers(): 2
Obs2:
Obs1:
observed.deleteObserver(obs2): 1
Obs1:
翻译自: https://www.includehelp.com/java/observable-deleteobserver-method-with-example.aspx
observable