Spec-Zone.ru › OpenJavaFX 17

Интерфейс Observable

Все известные подинтерфейсы:
Binding<T>, JavaBeanProperty<T>, NumberBinding, NumberExpression, ObservableArray<T>, ObservableBooleanValue, ObservableDoubleValue, ObservableFaceArray, ObservableFloatArray, ObservableFloatValue, ObservableIntegerArray, ObservableIntegerValue, ObservableList<E>, ObservableListValue<E>, ObservableLongValue, ObservableMap<K,​V>, ObservableMapValue<K,​V>, ObservableNumberValue, ObservableObjectValue<T>, ObservableSet<E>, ObservableSetValue<E>, ObservableStringValue, ObservableValue<T>, Property<T>, ReadOnlyJavaBeanProperty<T>, ReadOnlyProperty<T>, TextInputControl.Content, WritableListValue<E>, WritableMapValue<K,​V>, WritableSetValue<E>
Все известные реализующие классы:
BooleanBinding, BooleanExpression, BooleanProperty, BooleanPropertyBase, DoubleBinding, DoubleExpression, DoubleProperty, DoublePropertyBase, FilteredList, FloatBinding, FloatExpression, FloatProperty, FloatPropertyBase, IntegerBinding, IntegerExpression, IntegerProperty, IntegerPropertyBase, JavaBeanBooleanProperty, JavaBeanDoubleProperty, JavaBeanFloatProperty, JavaBeanIntegerProperty, JavaBeanLongProperty, JavaBeanObjectProperty, JavaBeanStringProperty, ListBinding, ListExpression, ListProperty, ListPropertyBase, LongBinding, LongExpression, LongProperty, LongPropertyBase, MapBinding, MapExpression, MapProperty, MapPropertyBase, ModifiableObservableListBase, NumberExpressionBase, ObjectBinding, ObjectExpression, ObjectProperty, ObjectPropertyBase, ObservableArrayBase, ObservableListBase, ObservableValueBase, ReadOnlyBooleanProperty, ReadOnlyBooleanPropertyBase, ReadOnlyBooleanWrapper, ReadOnlyDoubleProperty, ReadOnlyDoublePropertyBase, ReadOnlyDoubleWrapper, ReadOnlyFloatProperty, ReadOnlyFloatPropertyBase, ReadOnlyFloatWrapper, ReadOnlyIntegerProperty, ReadOnlyIntegerPropertyBase, ReadOnlyIntegerWrapper, ReadOnlyJavaBeanBooleanProperty, ReadOnlyJavaBeanDoubleProperty, ReadOnlyJavaBeanFloatProperty, ReadOnlyJavaBeanIntegerProperty, ReadOnlyJavaBeanLongProperty, ReadOnlyJavaBeanObjectProperty, ReadOnlyJavaBeanStringProperty, ReadOnlyListProperty, ReadOnlyListPropertyBase, ReadOnlyListWrapper, ReadOnlyLongProperty, ReadOnlyLongPropertyBase, ReadOnlyLongWrapper, ReadOnlyMapProperty, ReadOnlyMapPropertyBase, ReadOnlyMapWrapper, ReadOnlyObjectProperty, ReadOnlyObjectPropertyBase, ReadOnlyObjectWrapper, ReadOnlySetProperty, ReadOnlySetPropertyBase, ReadOnlySetWrapper, ReadOnlyStringProperty, ReadOnlyStringPropertyBase, ReadOnlyStringWrapper, SetBinding, SetExpression, SetProperty, SetPropertyBase, SimpleBooleanProperty, SimpleDoubleProperty, SimpleFloatProperty, SimpleIntegerProperty, SimpleListProperty, SimpleLongProperty, SimpleMapProperty, SimpleObjectProperty, SimpleSetProperty, SimpleStringProperty, SimpleStyleableBooleanProperty, SimpleStyleableDoubleProperty, SimpleStyleableFloatProperty, SimpleStyleableIntegerProperty, SimpleStyleableLongProperty, SimpleStyleableObjectProperty, SimpleStyleableStringProperty, SortedList, StringBinding, StringExpression, StringProperty, StringPropertyBase, StyleableBooleanProperty, StyleableDoubleProperty, StyleableFloatProperty, StyleableIntegerProperty, StyleableLongProperty, StyleableObjectProperty, StyleableStringProperty, TransformationList
public interface Observable
Сущность, которая оборачивает контент и позволяет наблюдать за ним для выявления несоответствий.

Реализация Observable может поддерживать ленивую оценку, что означает, что контент не пересчитывается немедленно после изменений, а лениво — при следующем запросе. Все привязки и свойства в этой библиотеке поддерживают ленивую оценку.

Реализации этого класса должны стремиться генерировать как можно меньше событий, чтобы избежать чрезмерной затраты времени в обработчиках событий. Реализации в этой библиотеке отмечают себя как недействительные при возникновении первого события проверки. Они больше не генерируют событий проверки до тех пор, пока их значение не будет пересчитано и не станет действительным снова.

С момента:
JavaFX 2.0
См. также:
ObservableValue, ObservableList, ObservableMap

Краткое описание методов

Модификатор и тип Метод Описание
void addListener​(InvalidationListener listener)
Добавляет InvalidationListener, который будет уведомляться всякий раз, когда Observable становится недействительным.
void removeListener​(InvalidationListener listener)
Удаляет заданный слушатель из списка слушателей, которые уведомляются всякий раз, когда значение Observable становится недействительным.

Подробное описание методов

addListener

void addListener(InvalidationListener listener)
Добавляет InvalidationListener, который будет уведомляться всякий раз, когда Observable становится недействительным. Если один и тот же слушатель добавляется более одного раза, он будет уведомляться более одного раза. То есть не выполняется проверка на уникальность.

Обратите внимание, что один и тот же экземпляр InvalidationListener может быть безопасно зарегистрирован для разных Observables.

Observable хранит сильную ссылку на слушателя, что предотвращает сборку мусора слушателя и может привести к утечке памяти. Рекомендуется либо аннулировать слушателя, вызвав removeListener после использования, либо использовать экземпляр WeakInvalidationListener, чтобы избежать этой ситуации.

Параметры:
listener - Слушатель для регистрации
Исключения:
NullPointerException - если слушатель null
См. также:
removeListener(InvalidationListener)

removeListener

void removeListener(InvalidationListener listener)
Удаляет заданный слушатель из списка слушателей, которые уведомляются всякий раз, когда значение Observable становится недействительным.

Если заданный слушатель не был ранее зарегистрирован (т. е. его никогда не добавляли), то этот вызов метода является бесполезным. Если он был добавлен ранее, то он будет удален. Если он был добавлен более одного раза, то будет удалён только первый.

Параметры:
listener - Слушатель для удаления
Исключения:
NullPointerException - если слушатель null
См. также:
addListener(InvalidationListener)

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API