モジュール javafx.base
パッケージ 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>
    ObjectBindingを実装するために必要なほとんどの機能を提供するベース・クラス。

    ObjectBindingは、簡単な無効性スキームを提供します。 拡張クラスは、bind(Observable...)を呼び出して依存性を登録できます。 登録された依存性のいずれかが無効になる場合、このObjectBindingは無効とマークされます。 unbind(Observable...)を使用すると、依存性のリスニングを停止できます。

    このクラスの具体的な実装を提供するには、依存性の現在の状態に基づいてこのバインディングの値を計算するためにメソッドcomputeValue()を実装する必要があります。 get()が無効なバインディングに対して呼び出される場合に呼び出されます。

    このベース・クラスの拡張方法の例は、DoubleBindingを参照してください。

    導入されたバージョン:
    JavaFX 2.0
    関連項目:
    BindingObjectExpression
    • コンストラクタの詳細

      • ObjectBinding

        public ObjectBinding​()
    • メソッドの詳細

      • addListener

        public void addListener​(InvalidationListener listener)
        次のインタフェースからコピーされた説明: Observable
        Observableが無効になるたびに通知されるInvalidationListenerを追加します。 同じリスナーが複数回追加される場合、複数回通知されます。 つまり、一意性を確認するためにチェックが実行されません。

        実際の同じInvalidationListenerインスタンスが異なるObservablesに対して安全に登録される場合があるので注意してください。

        Observableは、リスナーの強参照を格納するため、リスナーはガベージ・コレクションされず、メモリー・リークが発生する可能性があります。 使用後にremoveListenerを呼び出してリスナーを登録解除するか、WeakInvalidationListenerのインスタンスを使用してこの状況を回避することをお薦めします。

        定義:
        インタフェースObservableaddListener
        パラメータ:
        listener - 登録するリスナー
        関連項目:
        Observable.removeListener(InvalidationListener)
      • removeListener

        public void removeListener​(InvalidationListener listener)
        次のインタフェースからコピーされた説明: Observable
        Observableの値が無効になるたびに通知されるリスナーのリストから指定されたリスナーを削除します。

        指定されたリスナーが以前に登録されていない場合(つまり、一度も追加されていなかった場合)、このメソッドの呼出しはno-opです。 以前に追加されたことがある場合は削除されます。 複数回追加された場合、最初の発生のみ削除されます。

        定義:
        インタフェースObservableremoveListener
        パラメータ:
        listener - 削除するリスナー
        関連項目:
        Observable.addListener(InvalidationListener)
      • addListener

        public void addListener​(ChangeListener<? super T> listener)
        次のインタフェースからコピーされた説明: ObservableValue
        ObservableValueの値が変更されるたびに通知されるChangeListenerを追加します。 同じリスナーが複数回追加される場合、複数回通知されます。 つまり、一意性を確認するためにチェックが実行されません。

        実際の同じChangeListenerインスタンスが異なるObservableValuesに対して安全に登録される場合があるので注意してください。

        ObservableValueは、リスナーの強参照を格納するため、リスナーはガベージ・コレクションされず、メモリー・リークが発生する可能性があります。 使用後にremoveListenerを呼び出してリスナーを登録解除するか、WeakChangeListenerのインスタンスを使用してこの状況を回避することをお薦めします。

        定義:
        インタフェースObservableValue<T>addListener
        パラメータ:
        listener - 登録するリスナー
        関連項目:
        ObservableValue.removeListener(ChangeListener)
      • removeListener

        public void removeListener​(ChangeListener<? super T> listener)
        次のインタフェースからコピーされた説明: ObservableValue
        ObservableValueの値が変更されるたびに通知されるリスナーのリストから指定されたリスナーを削除します。

        指定されたリスナーが以前に登録されていない場合(つまり、一度も追加されていなかった場合)、このメソッドの呼出しはno-opです。 以前に追加されたことがある場合は削除されます。 複数回追加された場合、最初の発生のみ削除されます。

        定義:
        インタフェースObservableValue<T>removeListener
        パラメータ:
        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()のデフォルトの実装。
        定義:
        インタフェースBinding<T>dispose
      • get

        public final T get​()
        computeValue()の結果を返します。 バインディングが無効である場合、メソッドcomputeValue()のみ呼び出されます。 get()の最後の呼出しからバインディングが無効でなくなった場合、結果がキャッシュされて返されます。
        定義:
        インタフェースObservableObjectValue<T>get
        戻り値:
        現行値
      • onInvalidating

        protected void onInvalidating​()
        このバインディングが無効になる場合、反応するクラスを拡張して、メソッドonInvalidating()をオーバーライドできます。 デフォルトの実装は空です。
      • invalidate

        public final void invalidate​()
        次のインタフェースからコピーされた説明: Binding
        バインディングを無効とマークします。 これにより、次にリクエストするときにBindingの値が強制的に再計算されます。
        定義:
        インタフェースBinding<T>invalidate
      • isValid

        public final boolean isValid​()
        次のインタフェースからコピーされた説明: Binding
        バインディングが有効かどうかを確認します。
        定義:
        インタフェースBinding<T>isValid
        戻り値:
        Bindingが有効な場合はtrue、そうでない場合はfalse
      • computeValue

        protected abstract T computeValue​()
        このバインディングの現在の値を計算します。

        ObjectBindingを拡張するクラスは、computeValueの実装を提供する必要があります。

        戻り値:
        現行値
      • toString

        public String toString​()
        このObjectBindingオブジェクトの文字列表現を返します。
        オーバーライド:
        toString 、クラス:  Object
        戻り値:
        このObjectBindingオブジェクトの文字列表現。