JavaTM 2 Platform
Standard Ed. 5.0

パッケージ java.beans

Bean (JavaBeansTM アーキテクチャに基づいたコンポーネント) の開発に関連するクラスが含まれています。

参照先:
          説明

インタフェースの概要
AppletInitializer このインタフェースは、java.beans.Beans.instantiate とともに動作するように設計されています。
BeanInfo bean の実装者は、この BeanInfo インタフェースを実装する BeanInfo クラスを提供して、自分の bean のメソッド、プロパティ、イベントなどに関する明示的な情報を提供することができます。
Customizer カスタマイザクラスは、ターゲット Java Bean をカスタマイズするための完全なカスタム GUI を提供します。
DesignMode このインタフェースは、java.beans.beancontext.BeanContextChild のインスタンスの入れ子になっている階層に現在の designTime プロパティを送るために、java.beans.beancontext.BeanContext のインスタンスによって実装、または java.beans.beancontext.BeanContext のインスタンスから委譲されます。
ExceptionListener ExceptionListener は、内部例外の通知を受け取ります。
PropertyChangeListener PropertyChange イベントは、bean が「バウンド」プロパティを変更するたびにトリガされます。
PropertyEditor PropertyEditor クラスは、ユーザが指定の型のプロパティ値を編集するための GUI のサポートを提供します。
VetoableChangeListener VetoableChange イベントは、bean が「制約」プロパティを変更するたびにトリガされます。
Visibility 使用する環境によっては、bean は GUI を使えないサーバ上での実行も可能です。
 

クラスの概要
BeanDescriptor BeanDescriptor は、bean の Java クラスや displayName などを含んだ「bean」についてのグローバル情報を提供します。
Beans このクラスは、いくつかの多目的 bean 制御メソッドを提供します。
DefaultPersistenceDelegate DefaultPersistenceDelegate は、抽象クラス PersistenceDelegate の固定実装であり、情報の得られないクラスがデフォルトで使用する委譲です。
Encoder Encoder クラスは、公開 API を使って複数の JavaBeans の状態をエンコードするファイルまたはストリームを作成する際に使用されます。
EventHandler EventHandler クラスは、受信イベントオブジェクトとターゲットオブジェクトを含んだ単純な文を実行するメソッドを持つ、イベントリスナーの動的生成をサポートします。
EventSetDescriptor EventSetDescriptor は、指定された JavaBean がトリガするイベントのグループを記述します。
Expression Expression オブジェクトは、ターゲットと複数の引数に単一のメソッドを適用することにより、単一の戻り値 ("a.getFoo()" の場合と同様) を得ることができるプリミティブ式です。
FeatureDescriptor FeatureDescriptor クラスは、PropertyDescriptor、EventSetDescriptor、MethodDescriptor などの一般的な基底クラスです。
IndexedPropertyChangeEvent 「IndexedPropertyChange」イベントは、JavaBeans 仕様に準拠したコンポーネント (Bean) がインデックス付きのバウンドプロパティに変更を加えるたびに配信されます。
IndexedPropertyDescriptor IndexPropertyDescriptor は、配列と同様の機能を持つプロパティを記述するとともに、配列内の特定の要素へのアクセスに使用するインデックス付きの読み込みメソッドや書き込みメソッドを備えています。
Introspector Introspector クラスは、ツールを使って、ターゲット JavaBean がサポートするプロパティ、イベント、メソッドを調べる標準的な手法を提供します。
MethodDescriptor MethodDescriptor は、Java Bean がほかのコンポーネントからの外部アクセスを可能にするためにサポートしているメソッドです。
ParameterDescriptor Bean の実装者は、ParameterDescriptor クラスを利用することにより、各パラメータに対して、java.lang.reflect.Method クラスによって提供される低レベルの型情報以外の追加情報を提供できます。
PersistenceDelegate PersistenceDeligate クラスは、クラスの公開 API に含まれるメソッドによって指定されたクラスのインスタンスの状態を表現します。
PropertyChangeEvent 「PropertyChange」イベントは、Bean がバウンドプロパティまたは制約プロパティを変更するたびに配信されます。
PropertyChangeListenerProxy 指定された PropertyChangeListener を追加する目的で EventListenerProxy を拡張するクラスです。
PropertyChangeSupport バウンドプロパティをサポートする bean で使用できるユーティリティクラスです。
PropertyDescriptor PropertyDescriptor は、Java Bean が一対のアクセス用メソッドを使ってエクスポートする単一のプロパティを記述します。
PropertyEditorManager PropertyEditorManager は、指定の型の名前のプロパティエディタを検出するために使用されます。
PropertyEditorSupport プロパティエディタの構築に役立つサポートクラスです。
SimpleBeanInfo BeanInfo クラスを簡単に提供できるようにするためのサポートクラスです。
Statement Statement オブジェクトは、「a.setFoo(b)」 のように、ターゲットと引数に単一のメソッドが適用されるプリミティブな文を表します。
VetoableChangeListenerProxy VetoableChangeListener を制約プロパティに関連付ける目的で EventListenerProxy を拡張するクラスです。
VetoableChangeSupport 制約プロパティをサポートする bean によって使用されるユーティリティクラスです。
XMLDecoder XMLDecoder クラスは、XMLEncoder で作成された XML 文書の読み込みに使用できるほか、ObjectInputStream と同様の働きも備えています。
XMLEncoder XMLEncoder クラスは ObjectOutputStream の補足的な代替クラスであり、ObjectOutputStreamSerializable オブジェクトのバイナリ表現を生成する場合と同じ方法で JavaBean のテキスト表現を生成します。
 

例外の概要
IntrospectionException イントロスペクション中に例外が発生した場合にスローされます。
PropertyVetoException プロパティに対して、許容されない値を使って変更を加えようとすると、PropertyVetoException がスローされます。
 

パッケージ java.beans の説明

Bean (JavaBeansTM アーキテクチャに基づいたコンポーネント) の開発に関連するクラスが含まれています。一部のクラスは、アプリケーションの実行中に bean によって使用されます。たとえば、プロパティと拒否可能な変更イベントをトリガする bean によって使用されます。 ( PropertyChangeEvent を参照)。ただし、このパッケージに含まれるほとんどのクラスは、bean エディタ (bean のカスタマイズと組み合わせによってアプリケーションを作成する開発環境) 用です。こうしたクラスを使用すれば、bean エディタで bean のカスタマイズ用ユーザインタフェースを簡単に作成できます。たとえば、bean エディタでは処理できない特殊な型のプロパティを持つ bean がある場合、bean 開発者は PropertyEditor インタフェースを使って、この特殊な型のエディタを提供することができます。

bean が使用するリソースを最小にするために、bean エディタによって使用されるクラスは bean の編集中にだけ読み込まれます。それらのクラスは、アプリケーションで bean が実行されているときには必要ないため、読み込まれません。この情報は、bean 情報 (BeanInfo を参照) に保管されます。

特に明記されていないかぎりは、null 値または空の文字列は、このパッケージのメソッドへの有効なパラメータではありません。これらのパラメータが使用されると、例外が発生する可能性があります。

長期持続性

バージョン 1.4 の java.beans パッケージは、プロパティ値のテキスト表現として bean の読み込みおよび書き込みを行うことにより、「長期持続性」をサポートしています。プロパティ値を bean として、読み込みや書き込みを繰り返し行うことにより、その公開可能状態を取得できます。この方式は、変更の可能性がある非公開の実装ではなく公開の API だけに依存しているため、長期記憶に適しています。

注 - この持続スキーマは、イベントハンドラを使用する場合のように、内部カスタムクラスのインスタンスを自動的に作成することはできません。この問題を回避するには、カスタムイベントハンドラの内部クラスの代わりに EventHandler クラスを使用します。
XML 形式で bean を読み取るには XMLDecoder、書き込むには XMLEncoder クラスをそれぞれ使用します。持続スキーマには、bean に関する特別な知識がなくても bean に情報を読み込めるという特徴があります。

一方、bean から情報を書き出すときは、bean の型に関する知識が必要になることがあります。引数なしのコンストラクタとプロパティの公開 get/set メソッドだけで bean の状態を表現できる場合、bean に関する特別な知識は不要です。それ以外の場合、bean には、カスタマイズされた「持続的なデリゲート」 (特定の型の bean を書き出すオブジェクト) が必要です。JDK のクラスのうち、java.awt.Component の下位にあるものはすべて、プロパティと持続的なデリゲートを備えています。 bean に持続的なデリゲートを提供する必要がある (または提供することにした) 場合は、 DefaultPersistenceDelegate のインスタンスを使用するか、PersistenceDelegate のサブクラスを作成します。プロパティ値を引数として bean のコンストラクタを呼び出したいという理由だけで持続的なデリゲートが必要な場合は、引数を 1 つだけ取る DefaultPersistenceDelegate コンストラクタを使って持続的なデリゲートを作成できます。それ以外の場合は、通常、次のクラスを必要とする固有の持続的なデリゲートを実装する必要があります。

PersistenceDelegate
すべての持続的なデリゲートの派生元抽象クラス。サブクラスは、bean の型情報を使って、bean の作成とその状態の復元に必要な Statement および Expression を提供します。
Statement
オブジェクト上の単一のメソッドの呼び出しを表します。そのメソッドに対する引数のセットを含みます。
Expression
値を返すメソッド用の Statement のサブクラス。

持続的なデリゲートを作成したら、XMLEncodersetPersistenceDelegate メソッドを使って登録します。

関連ドキュメント

概要、アーキテクチャ、およびチュートリアルについては、下記を参照してください。


JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。