モジュール javafx.base
パッケージ javafx.beans.value

クラスWeakChangeListener<T>

  • 型パラメータ:
    T - 監視された値の型
    すべての実装されたインタフェース:
    ChangeListener<T>, WeakListener


    public final class WeakChangeListener<T>
    extends Object
    implements ChangeListener<T>, WeakListener
    ObservableValueがリスナーの弱い参照のみ保持する場合、WeakChangeListenerを使用できます。 これにより、使用後に監視されたオブジェクトからオブザーバが登録解除されない場合に発生する可能性があるメモリー・リークを回避できます。

    元のChangeListenerを渡して、WeakChangeListenerが作成されます。 監視されたオブジェクトの変更をリスニングするため、WeakChangeListenerを登録する必要があります。

    注意: 使用中に渡されたChangeListenerへの参照を保持する必要があります。そうでない場合は、すぐにガベージ・コレクションされます。

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

      • WeakChangeListener

        public WeakChangeListener​(ChangeListener<T> listener)
        WeakChangeListenerのコンストラクタ。
        パラメータ:
        listener - 通知される元のリスナー
    • メソッドの詳細

      • wasGarbageCollected

        public boolean wasGarbageCollected​()
        リンクされたリスナーがガベージ・コレクションされた場合、trueを返します。 この場合、リスナーをobservableから削除できます。
        定義:
        インタフェースWeakListenerwasGarbageCollected
        戻り値:
        リンクされたリスナーがガベージ・コレクションされた場合はtrue
      • changed

        public void changed​(ObservableValue<? extends T> observable,
                            T oldValue,
                            T newValue)
        このメソッドは、ChangeListenerの実装で指定する必要があります。 ObservableValueの値が変更される場合に呼び出されます。

        通常、このメソッドの監視された値を変更することは推奨されていません。

        定義:
        インタフェースChangeListener<T>changed
        パラメータ:
        observable - 値が変更されたObservableValue
        oldValue - 古い値
        newValue - 新しい値