public class

Observable

extends Object
java.lang.Object
   ↳ java.util.Observable

Class Overview

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

Summary

Public Constructors
Observable()
Constructs a new Observable object.
Public Methods
void addObserver(Observer observer)
Adds the specified observer to the list of observers.
int countObservers()
Returns the number of observers registered to this Observable.
synchronized void deleteObserver(Observer observer)
Removes the specified observer from the list of observers.
synchronized void deleteObservers()
Removes all observers from the list of observers.
boolean hasChanged()
Returns the changed flag for this Observable.
void notifyObservers(Object data)
If hasChanged() returns true, calls the update() method for every Observer in the list of observers using the specified argument.
void notifyObservers()
If hasChanged() returns true, calls the update() method for every observer in the list of observers using null as the argument.
Protected Methods
void clearChanged()
Clears the changed flag for this Observable.
void setChanged()
Sets the changed flag for this Observable.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public Observable ()

Constructs a new Observable object.

Public Methods

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
observer the Observer to add.

public int countObservers ()

Returns the number of observers registered to this Observable.

Returns
  • the number of observers.

public synchronized void deleteObserver (Observer observer)

Removes the specified observer from the list of observers. Passing null won't do anything.

Parameters
observer the observer to remove.

public synchronized void deleteObservers ()

Removes all observers from the list of observers.

public boolean hasChanged ()

Returns the changed flag for this Observable.

Returns
  • true when the changed flag for this Observable is set, false otherwise.

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
data the argument passed to update().

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).

Protected Methods

protected void clearChanged ()

Clears the changed flag for this Observable. After calling clearChanged(), hasChanged() will return false.

protected void setChanged ()

Sets the changed flag for this Observable. After calling setChanged(), hasChanged() will return true.