JavaTM Platform
Standard Ed. 6

パッケージ java.beans

Beans (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 JavaBeans 仕様に準拠したコンポーネント (Bean) がバウンドインデックス付きプロパティーを変更するたびに、IndexedPropertyChange イベントが送信されます。
IndexedPropertyDescriptor IndexPropertyDescriptor は、配列と同様の機能を持つプロパティーを記述するとともに、配列内の特定の要素へのアクセスに使用するインデックス付きの読み込みメソッドや書き込みメソッドを備えています。
Introspector Introspector クラスは、ツールに対して、ターゲット Java Bean がサポートするプロパティー、イベント、メソッドを調べる標準的な手法を提供します。
MethodDescriptor MethodDescriptor は、その他のコンポーネントからの外部アクセスのために Java Bean でサポートされる特定のメソッドを記述します。
ParameterDescriptor ParameterDescriptor クラスでは、Bean の実装者が各自のパラメータのそれぞれについて、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 クラスは、XMLDecoder で作成された XML 文書の読み込みに使用できるほか、ObjectInputStream と同様の働きも備えています。
XMLEncoder XMLEncoder クラスは ObjectOutputStream の補足的な代替クラスであり、ObjectOutputStreamSerializable オブジェクトのバイナリ表現を生成する場合と同様にして JavaBean のテキスト表現を生成します。
 

例外の概要
IntrospectionException イントロスペクション中に例外が発生した場合にスローされます。
PropertyVetoException PropertyVetoException は、プロパティーに対して推奨される変更が受け入れられない値である場合にスローされます。
 

注釈型の概要
ConstructorProperties コンストラクタの注釈。
 

パッケージ java.beans の説明

Beans (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 の型に関する知識が必要になることがあります。引数なしのコンストラクタとプロパティーの公開取得/設定メソッドだけで Bean の状態を表現できる場合、Bean に関する特別な知識は不要です。それ以外の場合、Bean には、カスタマイズされた「持続的な委譲」 (特定の型の Bean を書き出すオブジェクト) が必要です。JDK のクラスのうち、java.awt.Component の下位にあるものはすべて、プロパティーと持続的な委譲を備えています。

Bean に持続的な委譲を提供する必要がある場合は、DefaultPersistenceDelegate のインスタンスを使用するか、PersistenceDelegate のサブクラスを作成します。プロパティー値を引数として Bean のコンストラクタを呼び出したいという理由だけで持続的な委譲が必要な場合は、引数を 1 つだけ取る DefaultPersistenceDelegate コンストラクタを使って持続的な委譲を作成できます。それ以外の場合は、通常、次のクラスを必要とする固有の持続的な委譲を実装する必要があります。

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

持続的な委譲を作成したら、XMLEncodersetPersistenceDelegate メソッドを使って登録します。

関連ドキュメント

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


JavaTM Platform
Standard Ed. 6

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

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