- java.lang.Object
-
- javafx.beans.binding.ObjectExpression<T>
-
- javafx.beans.binding.ObjectBinding<T>
-
- Type Parameters:
-
T- тип обернутогоObject
- All Implemented Interfaces:
-
Binding<T>,Observable,ObservableObjectValue<T>,ObservableValue<T>
public abstract class ObjectBinding<T> extends ObjectExpression<T> implements Binding<T>
Базовый класс, предоставляющий большую часть функциональности, необходимой для реализацииBindingобъектаObject.ObjectBindingпредоставляет простую схему проверки на недействительность. Расширяющий класс может регистрировать зависимости, вызываяbind(Observable...). Если одна из зарегистрированных зависимостей становится недействительной, этотObjectBindingпомечается как недействительный. С помощьюunbind(Observable...)прослушивание зависимостей можно остановить.Для предоставления конкретной реализации этого класса, необходимо реализовать метод
computeValue(), чтобы вычислить значение этого связывания на основе текущего состояния зависимостей. Он вызывается при вызовеget()для недействительного связывания.См.
DoubleBindingдля примера расширения этого базового класса.- Since:
- JavaFX 2.0
- See Also:
-
Binding,ObjectExpression
-
Constructor Summary
Constructors Constructor Description ObjectBinding()
-
Method Summary
All MethodsInstance MethodsAbstract MethodsConcrete Methods Modifier and Type Method Description voidaddListener(InvalidationListener listener)ДобавляетInvalidationListener, который будет уведомляться всякий раз, когдаObservableстановится недействительным.voidaddListener(ChangeListener<? super T> listener)ДобавляетChangeListener, который будет уведомляться всякий раз, когда значениеObservableValueизменяется.protected voidbind(Observable... dependencies)Начать наблюдение за изменениями зависимостей.protected abstract TcomputeValue()Вычисляет текущее значение этого связывания.voiddispose()Стандартная реализацияdispose(), которая пуста.Tget()Возвращает результатcomputeValue().ObservableList<?>getDependencies()Стандартная реализацияgetDependencies(), которая возвращает пустойObservableList.voidinvalidate()Пометить связывание как недействительное.booleanisValid()Проверяет, является ли связывание действительным.protected voidonInvalidating()Метод onInvalidating() может быть переопределён расширяющими классами для реакции, если данное связывание становится недействительным.voidremoveListener(InvalidationListener listener)Удаляет заданный слушатель из списка слушателей, которые уведомляются всякий раз, когда значениеObservableстановится недействительным.voidremoveListener(ChangeListener<? super T> listener)Удаляет заданного слушателя из списка слушателей, которые уведомляются всякий раз, когда значениеObservableValueизменяется.StringtoString()Возвращает строковое представление этого объектаObjectBinding.protected voidunbind(Observable... dependencies)Остановить наблюдение за изменениями зависимостей.-
Methods inherited from class javafx.beans.binding.ObjectExpression
asString, asString, asString, getValue, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotNull, isNull, objectExpression
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface javafx.beans.value.ObservableValue
getValue
-
-
Подробное описание конструкторов
-
ObjectBinding
public ObjectBinding()
-
-
Подробное описание методов
-
addListener
public void addListener(InvalidationListener listener)
Описание, скопированное из интерфейса:ObservableДобавляетInvalidationListener, который будет уведомлен всякий раз, когдаObservableстановится недействительным. Если один и тот же слушатель добавляется более одного раза, он будет уведомлен более одного раза. То есть, проверка уникальности не выполняется.Обратите внимание, что один и тот же фактический
InvalidationListenerэкземпляр может быть безопасно зарегистрирован для различныхObservables.Observableхранит сильную ссылку на слушателя, что предотвращает сборку мусора слушателя и может привести к утечке памяти. Рекомендуется либо отменить регистрацию слушателя, вызвавremoveListenerпосле использования, либо использовать экземплярWeakInvalidationListener, чтобы избежать этой ситуации.- Указано:
-
addListenerв интерфейсеObservable - Параметры:
-
listener- Слушатель для регистрации - См. также:
Observable.removeListener(InvalidationListener)
-
removeListener
public void removeListener(InvalidationListener listener)
Описание, скопированное из интерфейса:ObservableУдаляет заданного слушателя из списка слушателей, которые уведомляются всякий раз, когда значениеObservableстановится недействительным.Если заданный слушатель не был ранее зарегистрирован (т. е. его никогда не добавляли), то этот вызов метода является пустым. Если он был добавлен ранее, то он будет удален. Если он был добавлен более одного раза, то будет удалена только первая запись.
- Указано:
-
removeListenerв интерфейсеObservable - Параметры:
-
listener- Слушатель для удаления - См. также:
Observable.addListener(InvalidationListener)
-
addListener
public void addListener(ChangeListener<? super T> listener)
Описание, скопированное из интерфейса:ObservableValueДобавляетChangeListener, который будет уведомлен всякий раз, когда значениеObservableValueизменяется. Если один и тот же слушатель добавляется более одного раза, он будет уведомлен более одного раза. То есть, проверка уникальности не выполняется.Обратите внимание, что один и тот же фактический
ChangeListenerэкземпляр может быть безопасно зарегистрирован для различныхObservableValues.ObservableValueхранит сильную ссылку на слушателя, что предотвращает сборку мусора слушателя и может привести к утечке памяти. Рекомендуется либо отменить регистрацию слушателя, вызвавremoveListenerпосле использования, либо использовать экземплярWeakChangeListener, чтобы избежать этой ситуации.- Указано:
-
addListenerв интерфейсеObservableValue<T> - Параметры:
-
listener- Слушатель для регистрации - См. также:
ObservableValue.removeListener(ChangeListener)
-
removeListener
public void removeListener(ChangeListener<? super T> listener)
Описание, скопированное из интерфейса:ObservableValueУдаляет заданного слушателя из списка слушателей, которые уведомляются всякий раз, когда значениеObservableValueизменяется.Если заданный слушатель не был ранее зарегистрирован (т. е. его никогда не добавляли), то этот вызов метода является пустым. Если он был добавлен ранее, то он будет удален. Если он был добавлен более одного раза, то будет удалена только первая запись.
- Указано:
-
removeListenerв интерфейсеObservableValue<T> - Параметры:
-
listener- Слушатель для удаления - См. также:
ObservableValue.addListener(ChangeListener)
-
bind
protected final void bind(Observable... dependencies)
Начинает наблюдение за зависимостями на предмет изменений. Если значение одной из зависимостей изменяется, привязка отмечается как недействительная.- Параметры:
-
dependencies- зависимости для наблюдения
-
unbind
protected final void unbind(Observable... dependencies)
Прекращает наблюдение за зависимостями на предмет изменений.- Параметры:
-
dependencies- зависимости для прекращения наблюдения
-
dispose
public void dispose()
Реализация по умолчаниюdispose(), которая пуста.
-
getDependencies
public ObservableList<?> getDependencies()
Реализация по умолчаниюgetDependencies(), которая возвращает пустойObservableList.- Указано:
-
getDependenciesв интерфейсеBinding<T> - Возвращает:
- пустой
ObservableList
-
get
public final T get()
Возвращает результатcomputeValue(). МетодcomputeValue()вызывается только в том случае, если привязка недействительна. Результат кэшируется и возвращается, если привязка не стала недействительной с момента последнего вызоваget().- Указано:
-
getв интерфейсеObservableObjectValue<T> - Возвращает:
- текущее значение
-
onInvalidating
protected void onInvalidating()
Метод onInvalidating() может быть переопределен расширяемыми классами для реакции, если эта привязка становится недействительной. Реализация по умолчанию пуста.
-
invalidate
public final void invalidate()
Описание, скопированное из интерфейса:BindingОтмечает привязку как недействительную. Это принудительно пересчитывает значениеBindingв следующий раз, когда оно запрашивается.- Указано:
-
invalidateв интерфейсеBinding<T>
-
isValid
public final boolean isValid()
Описание, скопированное из интерфейса:BindingПроверяет, является ли привязка действительной.
-
computeValue
protected abstract T computeValue()
Вычисляет текущее значение этой привязки.Классы, расширяющие
ObjectBinding, должны предоставить реализациюcomputeValue.- Возвращает:
- текущее значение
-
© 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.