T - 監視された値の型public final class WeakChangeListener<T> extends Object implements ChangeListener<T>, WeakListener
ObservableValueがリスナーの弱い参照のみ保持する場合、WeakChangeListenerを使用できます。 これにより、使用後に監視されたオブジェクトからオブザーバが登録解除されない場合に発生する可能性があるメモリー・リークを回避できます。
元のChangeListenerを渡して、WeakChangeListenerが作成されます。 監視されたオブジェクトの変更をリスニングするため、WeakChangeListenerを登録する必要があります。
ノート: 使用中に渡されたChangeListenerへの参照を保持する必要があります。そうでない場合は、すぐにガベージ・コレクションされます。
ChangeListener、ObservableValue| コンストラクタと説明 |
|---|
WeakChangeListener(ChangeListener<T> listener)
WeakChangeListenerのコンストラクタ。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
void |
changed(ObservableValue<? extends T> observable, T oldValue, T newValue)
このメソッドは、
ChangeListenerの実装で指定する必要があります。 |
boolean |
wasGarbageCollected()
リンクされたリスナーがガベージ・コレクションされた場合、
trueを返します。 |
public WeakChangeListener(ChangeListener<T> listener)
WeakChangeListenerのコンストラクタ。listener - 通知される元のリスナーpublic boolean wasGarbageCollected()
trueを返します。 この場合、リスナーをobservableから削除できます。 WeakListenerのwasGarbageCollectedtrue。public void changed(ObservableValue<? extends T> observable, T oldValue, T newValue)
ChangeListenerの実装で指定する必要があります。 ObservableValueの値が変更される場合に呼び出されます。
通常、このメソッドの監視された値を変更することは推奨されていません。
ChangeListener<T>のchangedobservable - 値が変更されたObservableValueoldValue - 古い値newValue - 新しい値Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.