PropertyChange サポートとEventListenerListのドキュメントを読みました。私の理解では、どちらも a を保持するという同様の目的を果たし、発生したときにそれらをlist of listeners
使用します。重宝するのは、の場合だけでしょうか。を使用しない単純なアプリケーションの場合、一方を使用する利点はありますか。notifying
event/propertyChange
GUI applications
EventListenerList
JavaBean
GUI components
2 に答える
一般的に言えば、PropertyChangeEvent
オブジェクトのプロパティ値 (読み取り可能なプロパティ/値) が変化したときに発生し、(一般的な) イベントはあらゆる種類のイベント (選択の変更やマウス クリックなど) を表すことができます。オブジェクトの状態の変化を表す必要はありません
PropertyChangeSupport
Bean フレームワーク (特に、ただしこれに限定されない) GUI エディターの一部です。これは、使用できないという意味ではありません。実際、多くのオブジェクトがこの機能に依存していSwingWorker
ます。たとえば、SwingLabs の多くのオブジェクトなどです。
そのことを念頭に置いてProperyChangeSupport
、オブジェクトのプロパティ/値が変更されたことを利害関係者に通知したい場合、およびEventListenerList
オブジェクト内で発生していることに対して一般的なイベント通知を提供したい場合に使用する必要があります (ただし、関連する必要はありません)。特定のプロパティまたは状態に)
私が持っている唯一の問題はProptertyChanegSupport
、どのプロパティがバインドされていてどれがバインドされていないかがあまり明確ではないことです.新しいオブジェクトを使い始めるのが難しい場合があります.私だけ
の本来の意図は GUI 用だったと確信していますが、以前は GUI 以外の作業に使用したことがありますが、単一のリスナーしかサポートしていない場合はEventListenrerList
、 を使用する方が簡単かもしれません。List