Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.base
Пакет javafx.beans.binding

Класс DoubleBinding

  • 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, вычисляющего квадратный корень из ObservableNumberValue moo.

     
     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()
  • Краткое описание методов

    Все методыМетоды экземпляровАбстрактные методыКонкретные методы
    Модификатор и тип Метод Описание
    void addListener​(InvalidationListener listener)
    Добавляет InvalidationListener, который будет уведомляться всякий раз, когда Observable становится недействительным.
    void addListener​(ChangeListener<? super Number> listener)
    Добавляет ChangeListener, который будет уведомляться всякий раз, когда значение ObservableValue изменяется.
    protected void bind​(Observable... dependencies)
    Начать наблюдение за зависимостями на предмет изменений.
    protected abstract double computeValue()
    Вычисляет текущее значение этой привязки.
    void dispose()
    Реализация по умолчанию dispose(), которая пустая.
    double get()
    Возвращает результат computeValue().
    ObservableList<?> getDependencies()
    Реализация по умолчанию getDependencies(), которая возвращает пустой ObservableList.
    void invalidate()
    Пометить привязку как недействительную.
    boolean isValid()
    Проверяет, является ли привязка действительной.
    protected void onInvalidating()
    Метод onInvalidating() может быть переопределен расширяющими классами для реакции, если эта привязка становится недействительной.
    void removeListener​(InvalidationListener listener)
    Удаляет указанный слушатель из списка слушателей, которые уведомляются всякий раз, когда значение Observable становится недействительным.
    void removeListener​(ChangeListener<? super Number> listener)
    Удаляет указанного слушателя из списка слушателей, которые уведомляются всякий раз, когда значение ObservableValue изменяется.
    String toString()
    Возвращает строковое представление этого объекта DoubleBinding.
    protected void unbind​(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(), которая является пустой.
      Указано в:
      dispose в интерфейсе Binding<Number>
    • 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
      Проверяет, является ли привязка действительной.
      Указано в:
      isValid в интерфейсе Binding<Number>
      Возвращает:
      true, если Binding действительна, false в противном случае
    • computeValue

      protected abstract double computeValue()
      Вычисляет текущее значение этой привязки.

      Классы, расширяющие DoubleBinding, должны предоставить реализацию computeValue.

      Возвращает:
      текущее значение
    • toString

      public String toString()
      Возвращает строковое представление этого объекта DoubleBinding.
      Переопределяет:
      toString в классе Object
      Возвращает:
      строковое представление этого объекта DoubleBinding.

© 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