- java.lang.Object
-
- javafx.beans.binding.NumberExpressionBase
-
- javafx.beans.binding.DoubleExpression
-
- javafx.beans.binding.DoubleBinding
-
- Все реализованные интерфейсы:
-
Binding<Number>,NumberBinding,NumberExpression,Observable,ObservableDoubleValue,ObservableNumberValue,ObservableValue<Number>
public abstract class DoubleBinding extends DoubleExpression implements NumberBinding
Базовый класс, предоставляющий большую часть функциональности, необходимой для реализацииBindingзначенияdouble.DoubleBindingпредоставляет простую схему проверки на недействительность. Расширяемый класс может регистрировать зависимости, вызываяbind(Observable...). Если одна из зарегистрированных зависимостей становится недействительной, этотDoubleBindingпомечается как недействительный. С помощьюunbind(Observable...)прослушивание зависимостей может быть остановлено.Для предоставления конкретной реализации этого класса, метод
computeValue()должен быть реализован для вычисления значения этой привязки на основе текущего состояния зависимостей. Он вызывается, когдаget()вызывается для недействительной привязки.Ниже приведен простой пример
DoubleBinding, вычисляющего квадратный корень изObservableNumberValuemoo.
Следующий пример демонстрирует то же самое с реализациями необязательных методовfinal ObservableDoubleValue moo = ...; DoubleBinding foo = new DoubleBinding() { { super.bind(moo); } @Override protected double computeValue() { return Math.sqrt(moo.getValue()); } };Binding.getDependencies()иBinding.dispose().final ObservableDoubleValue moo = ...; DoubleBinding foo = new DoubleBinding() { { super.bind(moo); } @Override protected double computeValue() { return Math.sqrt(moo.getValue()); } @Override public ObservableList<?> getDependencies() { return FXCollections.singletonObservableList(moo); } @Override public void dispose() { super.unbind(moo); } };- С момента:
- JavaFX 2.0
- См. также:
-
Binding,NumberBinding,DoubleExpression
-
Краткое описание конструкторов
Конструкторы Конструктор Описание DoubleBinding()
-
Краткое описание методов
Все методыМетоды экземпляровАбстрактные методыКонкретные методы Модификатор и тип Метод Описание voidaddListener(InvalidationListener listener)ДобавляетInvalidationListener, который будет уведомляться всякий раз, когдаObservableстановится недействительным.voidaddListener(ChangeListener<? super Number> listener)ДобавляетChangeListener, который будет уведомляться всякий раз, когда значениеObservableValueизменяется.protected voidbind(Observable... dependencies)Начать наблюдение за зависимостями на предмет изменений.protected abstract doublecomputeValue()Вычисляет текущее значение этой привязки.voiddispose()Реализация по умолчаниюdispose(), которая пустая.doubleget()Возвращает результатcomputeValue().ObservableList<?>getDependencies()Реализация по умолчаниюgetDependencies(), которая возвращает пустойObservableList.voidinvalidate()Пометить привязку как недействительную.booleanisValid()Проверяет, является ли привязка действительной.protected voidonInvalidating()Метод onInvalidating() может быть переопределен расширяющими классами для реакции, если эта привязка становится недействительной.voidremoveListener(InvalidationListener listener)Удаляет указанный слушатель из списка слушателей, которые уведомляются всякий раз, когда значениеObservableстановится недействительным.voidremoveListener(ChangeListener<? super Number> listener)Удаляет указанного слушателя из списка слушателей, которые уведомляются всякий раз, когда значениеObservableValueизменяется.StringtoString()Возвращает строковое представление этого объектаDoubleBinding.protected voidunbind(Observable... dependencies)Остановить наблюдение за зависимостями на предмет изменений.-
Методы, унаследованные от класса javafx.beans.binding.DoubleExpression
add, add, add, add, add, asObject, divide, divide, divide, divide, divide, doubleExpression, doubleExpression, doubleValue, floatValue, getValue, intValue, longValue, multiply, multiply, multiply, multiply, multiply, negate, subtract, subtract, subtract, subtract, subtract
-
Методы, унаследованные от класса javafx.beans.binding.NumberExpressionBase
asString, asString, asString, greaterThan, greaterThan, greaterThan, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, lessThan, lessThan, lessThan, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, numberExpression
-
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Методы, унаследованные от интерфейса javafx.beans.binding.NumberExpression
add, add, add, add, add, asString, asString, asString, divide, divide, divide, divide, divide, greaterThan, greaterThan, greaterThan, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, lessThan, lessThan, lessThan, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, multiply, multiply, multiply, multiply, multiply, negate, subtract, subtract, subtract, subtract, subtract
-
Методы, унаследованные от интерфейса javafx.beans.value.ObservableNumberValue
doubleValue, floatValue, intValue, longValue
-
Методы, унаследованные от интерфейса javafx.beans.value.ObservableValue
getValue
-
-
Подробное описание конструкторов
-
DoubleBinding
public DoubleBinding()
-
-
Подробное описание методов
-
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 Number> listener)
Описание, скопированное из интерфейса:ObservableValueДобавляетChangeListener, который будет уведомляться всякий раз, когда значениеObservableValueменяется. Если один и тот же слушатель добавляется более одного раза, он будет уведомляться более одного раза. То есть проверка уникальности не выполняется.Обратите внимание, что один и тот же фактический экземпляр
ChangeListenerможет быть безопасно зарегистрирован для различныхObservableValues.ObservableValueхранит сильную ссылку на слушателя, что предотвращает сборку мусора слушателя и может привести к утечке памяти. Рекомендуется либо отменить регистрацию слушателя, вызвавremoveListenerпосле использования, либо использовать экземплярWeakChangeListener, чтобы избежать этой ситуации.- Указано в:
-
addListenerв интерфейсеObservableValue<Number> - Параметры:
-
listener- Слушатель для регистрации - См. также:
ObservableValue.removeListener(ChangeListener)
-
removeListener
public void removeListener(ChangeListener<? super Number> listener)
Описание, скопированное из интерфейса:ObservableValueУдаляет заданного слушателя из списка слушателей, которые уведомляются всякий раз, когда значениеObservableValueизменяется.Если заданный слушатель не был ранее зарегистрирован (т. е. он никогда не добавлялся), то вызов этого метода является пустой операцией. Если он был ранее добавлен, он будет удален. Если он был добавлен более одного раза, то будет удален только первый случай.
- Указано в:
-
removeListenerв интерфейсеObservableValue<Number> - Параметры:
-
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<Number> - Возвращает:
- пустой
ObservableList
-
get
public final double get()
Возвращает результатcomputeValue(). МетодcomputeValue()вызывается только в том случае, если привязка недействительна. Результат кэшируется и возвращается, если привязка не стала недействительной с момента последнего вызоваget().- Указано в:
-
getв интерфейсеObservableDoubleValue - Возвращает:
- текущее значение
-
onInvalidating
protected void onInvalidating()
Метод onInvalidating() может быть переопределен производными классами для реагирования, если эта привязка становится недействительной. Реализация по умолчанию пустая.
-
invalidate
public final void invalidate()
Описание, скопированное из интерфейса:BindingОтметить привязку как недействительную. Это принудительно пересчитывает значениеBindingв следующий раз, когда оно запрашивается.- Указано в:
-
invalidateв интерфейсеBinding<Number>
-
isValid
public final boolean isValid()
Описание, скопированное из интерфейса:BindingПроверяет, является ли привязка действительной.
-
computeValue
protected abstract double computeValue()
Вычисляет текущее значение этой привязки.Классы, расширяющие
DoubleBinding, должны предоставить реализацию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.