public interface Observable
Observableis an entity that wraps content and allows to observe the content for invalidations.
An implementation of
Observable may support lazy evaluation,
which means that the content is not immediately recomputed after changes, but
lazily the next time it is requested. All bindings and properties in
this library support lazy evaluation.
Implementations of this class should strive to generate as few events as possible to avoid wasting too much time in event handlers. Implementations in this library mark themselves as invalid when the first invalidation event occurs. They do not generate anymore invalidation events until their value is recomputed and valid again.
|Modifier and Type||Method and Description|
Removes the given listener from the list of listeners, that are notified whenever the value of the
void addListener(InvalidationListener listener)
InvalidationListenerwhich will be notified whenever the
Observablebecomes invalid. If the same listener is added more than once, then it will be notified more than once. That is, no check is made to ensure uniqueness.
Note that the same actual
InvalidationListener instance may be
safely registered for different
Observable stores a strong reference to the listener
which will prevent the listener from being garbage collected and may
result in a memory leak. It is recommended to either unregister a
listener by calling
removeListener after use or to use an instance of
WeakInvalidationListener avoid this situation.
void removeListener(InvalidationListener listener)
If the given listener has not been previously registered (i.e. it was never added) then this method call is a no-op. If it had been previously added then it will be removed. If it had been added more than once, then only the first occurrence will be removed.
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2008, 2017, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.