public class Observable
- Object
- Observable
Known subtypesAsyncResource
Observable is used to notify a group of Observer objects when a change
occurs. On creation, the set of observers is empty. After a change occurred,
the application can call the
#notifyObservers() method. This will
cause the invocation of the update() method of all registered
Observers. The order of invocation is not specified. This implementation will
call the Observers in the order they registered. Subclasses are completely
free in what order they call the update methods.See also
Constructors
public Observable() | Constructs a new Observable object. |
Methods
public void addObserver(Observer observer) | Adds the specified observer to the list of observers. |
protected void clearChanged() | Clears the changed flag for this Observable. |
public int countObservers() | Returns the number of observers registered to this Observable. |
public synchronized void deleteObserver(Observer observer) | Removes the specified observer from the list of observers. |
public synchronized void deleteObservers() | Removes all observers from the list of observers. |
public boolean hasChanged() | Returns the changed flag for this Observable. |
public void notifyObservers() | If hasChanged() returns true, calls the update() method for every observer in the list of observers using null as the argument. |
public void notifyObservers(Object data) | If hasChanged() returns true, calls the update() method for every Observer in the list of observers using the specified argument. |
protected void setChanged() | Sets the changed flag for this Observable. |
Inherited methods
Constructor details
Observable
public Observable()Constructs a new
Observable object.Method details
addObserver
public void addObserver(Observer observer)Adds the specified observer to the list of observers. If it is already
registered, it is not added a second time.
Parameters
observerObserver- the Observer to add.
clearChanged
protected void clearChanged()Clears the changed flag for this
Observable. After calling
clearChanged(), hasChanged() will return false.countObservers
public int countObservers()Returns the number of observers registered to this
Observable.Returns
the number of observers.
deleteObserver
public synchronized void deleteObserver(Observer observer)Removes the specified observer from the list of observers. Passing null
won’t do anything.
Parameters
observerObserver- the observer to remove.
deleteObservers
public synchronized void deleteObservers()Removes all observers from the list of observers.
hasChanged
public boolean hasChanged()Returns the changed flag for this
Observable.Returns
true when the changed flag for this Observable is
set, false otherwise.notifyObservers
public void notifyObservers()If hasChanged() returns true, calls the update()
method for every observer in the list of observers using null as the
argument. Afterwards, calls clearChanged().
Equivalent to calling notifyObservers(null).
notifyObservers
public void notifyObservers(Object data)If
hasChanged() returns true, calls the update()
method for every Observer in the list of observers using the specified
argument. Afterwards calls clearChanged().Parameters
dataObject- the argument passed to
update().
setChanged
protected void setChanged()Sets the changed flag for this
Observable. After calling
setChanged(), hasChanged() will return true.