Spec-Zone.ru › OpenJavaFX 24

Класс ObjectBinding<T>

java.lang.Object
javafx.beans.binding.ObjectExpression<T>
javafx.beans.binding.ObjectBinding<T>
Параметры типа:
T - тип обернутого Object
Все реализованные интерфейсы:
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 для примера расширения этого базового класса.

С момента:
JavaFX 2.0
См. также:
  • Binding
  • ObjectExpression

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

Конструктор Описание
ObjectBinding()
Создаёт стандартный ObjectBinding.

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

Модификатор и тип Метод Описание
void addListener(InvalidationListener listener)
Добавляет InvalidationListener, который будет уведомляться всякий раз, когда Observable становится недействительным.
void addListener(ChangeListener<? super T> listener)
Добавляет ChangeListener, который будет уведомляться всякий раз, когда значение ObservableValue изменяется.
protected boolean allowValidation()
Проверяет, разрешено ли привязке стать действительной.
protected final void bind(Observable... dependencies)
Начать наблюдение за зависимостями на предмет изменений.
protected abstract T computeValue()
Вычисляет текущее значение этой привязки.
void dispose()
Базовая реализация dispose(), которая ничего не делает.
final T get()
Возвращает результат computeValue().
ObservableList<?> getDependencies()
Базовая реализация getDependencies(), которая возвращает пустой ObservableList.
final void invalidate()
Пометить привязку как недействительную.
protected final boolean isObserved()
Проверяет, зарегистрирован ли хотя бы один слушатель на привязке.
final boolean isValid()
Проверяет, действительна ли привязка.
protected void onInvalidating()
Вызывается, когда эта привязка становится недействительной.
void removeListener(InvalidationListener listener)
Удаляет указанного слушателя из списка слушателей, которые уведомляются всякий раз, когда значение Observable становится недействительным.
void removeListener(ChangeListener<? super T> listener)
Удаляет указанного слушателя из списка слушателей, которые уведомляются всякий раз, когда значение ObservableValue изменяется.
String toString()
Возвращает строковое представление объекта ObjectBinding.
protected final void unbind(Observable... dependencies)
Остановить наблюдение за зависимостями на предмет изменений.

Методы, объявленные в классе javafx.beans.binding.ObjectExpression

asString, asString, asString, getValue, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotNull, isNull, objectExpression

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Методы, объявленные в интерфейсе javafx.beans.Observable

subscribe

Методы, объявленные в интерфейсе javafx.beans.value.ObservableValue

flatMap, getValue, map, orElse, subscribe, subscribe, when

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

ObjectBinding

public ObjectBinding()
Создает ObjectBinding по умолчанию.

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

addListener

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

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

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

Указано в:
addListener в интерфейсе Observable
Параметры:
listener - The listener to register
См. также:
  • Observable.removeListener(InvalidationListener)

removeListener

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

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

Указано в:
removeListener в интерфейсе Observable
Параметры:
listener - The listener to remove
См. также:
  • Observable.addListener(InvalidationListener)

addListener

public void addListener(ChangeListener<? super T> listener)
Описание скопировано из интерфейса: ObservableValue
Добавляет ChangeListener, который будет уведомлен всякий раз, когда значение ObservableValue изменяется. Если один и тот же слушатель добавлен более одного раза, он будет уведомлен более одного раза. То есть проверка на уникальность не выполняется.

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

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

Указано в:
addListener в интерфейсе ObservableValue<T>
Параметры:
listener - The listener to register
См. также:
  • ObservableValue.removeListener(ChangeListener)

removeListener

public void removeListener(ChangeListener<? super T> listener)
Описание скопировано из интерфейса: ObservableValue
Удаляет данного слушателя из списка слушателей, которые уведомляются всякий раз, когда значение ObservableValue изменяется.

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

Указано в:
removeListener в интерфейсе ObservableValue<T>
Параметры:
listener - The listener to remove
См. также:
  • ObservableValue.addListener(ChangeListener)

bind

protected final void bind(Observable... dependencies)
Начать наблюдение за зависимостями на предмет изменений. Если значение одной из зависимостей изменяется, привязка помечается как недействительная.
Параметры:
dependencies - the dependencies to observe

unbind

protected final void unbind(Observable... dependencies)
Прекратить наблюдение за зависимостями на предмет изменений.
Параметры:
dependencies - the dependencies to stop observing

dispose

public void dispose()
Реализация по умолчанию dispose(), которая пуста.
Указано в:
dispose в интерфейсе Binding<T>

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()
Вызывается, когда эта привязка становится недействительной. Может быть переопределен расширяющими классами для реагирования на недействительность. Реализация по умолчанию пуста.

invalidate

public final void invalidate()
Описание скопировано из интерфейса: Binding
Пометьте привязку как недействительную. Это принудительно пересчитывает значение Binding при следующем запросе.
Указано в:
invalidate в интерфейсе Binding<T>

isValid

public final boolean isValid()
Описание скопировано из интерфейса: Binding
Проверяет, действительна ли привязка.
Указано в:
isValid в интерфейсе Binding<T>
Возвращает:
true если Binding действителен, в противном случае false

isObserved

protected final boolean isObserved()
Проверяет, зарегистрирован ли хотя бы один слушатель в привязке. Это полезно для подклассов, которые хотят экономить ресурсы, когда за ними не наблюдают.
Возвращает:
true если в этой привязке в данный момент зарегистрирован один или несколько слушателей, в противном случае false
С:
19

allowValidation

protected boolean allowValidation()
Проверяет, разрешено ли привязке становиться действительной. Переопределяющие классы могут запретить привязке становиться действительной. Это полезно в подклассах, которые не всегда прослушивают недействительность своих зависимостей и предпочитают вместо этого пересчитывать текущее значение. Это также может быть полезно, если кэширование текущего вычисленного значения нежелательно.

Реализация по умолчанию всегда позволяет привязкам становиться действительными.

Возвращает:
true если этой привязке разрешено становиться действительной, в противном случае false
С:
19

computeValue

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

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

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

toString

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

Сообщить об ошибке или предложить улучшение
Авторские права © 2008, 2025, Oracle и/или его филиалы. Все права защищены.

© 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