Spec-Zone.ru › OpenJavaFX 21

Связывание интерфейсов<T>

Параметры типа:
T - тип обернутого значения
Все суперинтерфейсы:
Observable, ObservableValue<T>
Все известные подинтерфейсы:
NumberBinding
Все известные реализующие классы:
BooleanBinding, DoubleBinding, FloatBinding, IntegerBinding, ListBinding, LongBinding, MapBinding, ObjectBinding, SetBinding, StringBinding
public interface Binding<T> extends ObservableValue<T>
Объект Binding вычисляет значение, которое зависит от одного или нескольких источников. Источники обычно называются зависимостями связывания. Связывание наблюдает за изменениями своих зависимостей и автоматически обновляет свое значение.

Хотя зависимость связывания может быть чем угодно, почти всегда это реализация ObservableValue. Binding реализует ObservableValue, что позволяет использовать его в другом связывании. Это позволяет собирать очень сложные связывания из простых связываний.

Все связывания в среде выполнения JavaFX рассчитываются лениво. Это означает, что если зависимость меняется, результат связывания не пересчитывается немедленно, а помечается как недействительный. В следующий раз, когда запрашивается значение недействительного связывания, оно пересчитывается.

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

С:
JavaFX 2.0
См. также:
  • DoubleBinding

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

Модификатор и тип Метод Описание
void dispose()
Уведомляет Binding о том, что он больше не будет использоваться, и любые ссылки могут быть удалены.
ObservableList<?> getDependencies()
Возвращает зависимости связывания в неизменяемом ObservableList.
void invalidate()
Пометить связывание как недействительное.
boolean isValid()
Проверяет, является ли связывание действительным.

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

addListener, removeListener, subscribe

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

addListener, flatMap, getValue, map, orElse, removeListener, subscribe, subscribe, when

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

isValid

boolean isValid()
Проверяет, является ли связывание действительным.
Возвращает:
true, если Binding действителен, false в противном случае

invalidate

void invalidate()
Пометить связывание как недействительное. Это заставляет пересчитать значение Binding в следующий раз, когда оно будет запрошено.

getDependencies

ObservableList<?> getDependencies()
Возвращает зависимости связывания в неизменяемом ObservableList. Реализация необязательна. Основная цель этого метода — помочь разработчикам во время разработки. Он позволяет исследовать и отслеживать зависимости связывания во время выполнения.

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

Возвращает:
неизменяемый список ObservableList зависимостей

dispose

void dispose()
Уведомляет Binding о том, что он больше не будет использоваться, и любые ссылки могут быть удалены. Вызов этого метода обычно приводит к прекращению наблюдения связыванием за его зависимостями путем отмены регистрации его слушателей. Реализация необязательна.

Все связывания в нашей реализации используют экземпляры WeakInvalidationListener, что означает, что связыванию обычно не нужно освобождаться. Но если вы планируете использовать свое приложение в средах, которые не поддерживают WeakReferences, вы должны освободить неиспользуемые Bindings, чтобы избежать утечек памяти.

© 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