Observable類deleteObserver()方法
- deleteObserver() 方法可在
java.util
包。 - deleteObserver() 方法用於從這個 Observable 對象的觀察者集中移除給定的觀察者(obs)。
- deleteObserver() 方法是一個非靜態方法,它隻能通過類對象訪問,如果我們嘗試使用類名訪問方法,那麽我們將得到一個錯誤。
- deleteObserver() 方法刪除觀察者時不會拋出異常。
用法:
public void deleteObserver(Observer obs);
參數:
Observer obs
– 表示要從集合中刪除的觀察者。
返回值:
該方法的返回類型是void
,它什麽都不返回。
例:
// 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();
}
}
輸出
observed.countObservers():2 Obs2: Obs1: observed.deleteObserver(obs2):1 Obs1:
相關用法
- Java Observable hasChanged()用法及代碼示例
- Java Observable addObserver()用法及代碼示例
- Java Observable clearChanged()用法及代碼示例
- Java Observable setChanged()用法及代碼示例
- Java Observable countObservers()用法及代碼示例
- Java Observable notifyObservers()用法及代碼示例
- Java ObjectInputStream readDouble()用法及代碼示例
- Java ObjectStreamField getOffset()用法及代碼示例
- Java ObjectStreamField compareTo()用法及代碼示例
- Java Object hashCode()用法及代碼示例
- Java ObjectInputStream readUnsignedByte()用法及代碼示例
- Java ObjectInputStream readFields()用法及代碼示例
- Java ObjectOutputStream writeFields()用法及代碼示例
- Java ObjectInputStream readFully()用法及代碼示例
- Java ObjectStreamField getName()用法及代碼示例
- Java ObjectInputStream readInt()用法及代碼示例
- Java ObjectStreamClass forClass()用法及代碼示例
- Java ObjectInputStream read()用法及代碼示例
- Java ObjectStreamField getTypeCode()用法及代碼示例
- Java ObjectOutputStream writeBytes()用法及代碼示例
注:本文由純淨天空篩選整理自Preeti Jain大神的英文原創作品 Java Observable deleteObserver() Method with Example。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。