フィールド設定ダイアログ: フィールドの追加

クラス定義のフィールドを作成および編集する際に使用します。

また、このダイアログを使用して、フィールドにJavaBeans準拠アクセッサ・メソッドを作成したり、Enterprise JavaBeans(EJB)のフィールドを変更することができます。

フィールド名
フィールドの名前を入力します。
フィールド型
ドロップダウン・リストから型を選択するか、「参照」をクリックしてプロジェクトの現在のパス設定で既存の型を検索します。
修飾子
フィールドのスコープおよび追加の修飾子を指定します。
スコープ
フィールドに対して適切なスコープを選択します。「<default>」を選択すると、パッケージ・レベルのアクセスがフィールドに与えられます。通常はフィールドをprivateと宣言し、値の読取りおよび書込みを行うためにpublicアクセッサ・メソッドを指定します。
final
最初の初期化以降、フィールドが変化していない場合に選択します。

一般に、finalフィールドはクラスまたはオブジェクトの不変プロパティを定義する際に使用します。不変プロパティとは、クラスまたはオブジェクトの存続期間を通じて変化しないプロパティです。

transient
フィールドを、シリアライズされたオブジェクトに含めない場合に選択します。

つまり、transientフィールドは、永続的な記憶域に書込みされないフィールドです。

static
フィールドがクラスのすべてのインスタンスで共有される場合に選択します。

フィールドにstaticを宣言した場合、実際に作成されるクラスのインスタンスの数にかかわらず、フィールドの表現は1つのみです。

volatile
同期化メカニズムが使用されないフィールドが、同時スレッドによって変更される可能性がある場合に選択します。

volatileフィールドは常に変化するフィールドです。

アクセッサ
フィールド値の読取りおよび書込みをするために新規アクセッサ・メソッドを追加する場合、またはクラスの既存のgetterメソッドおよびsetterメソッドを上書きする場合に選択します。フィールドへのアクセスに関するJavaBeansの規則に準拠したアクセッサ・メソッドを定義する場合、このオプションを使用します。

クラス・エディタによって次の処理が実行されます。

警告: get()またはset()いずれかのチェック・ボックスの選択を解除すると、エディタは選択解除したオプションのクラスへ置換アクセッサを追加しないで、getterまたはsetterの実装を削除します。このため、これらのオプションの選択を解除するのは、クラス定義から特定のアクセッサ・メソッドを削除する場合のみにしてください。

get()メソッドを作成
フィールド値を読み取るメソッドをクラスに追加する場合にチェックします。
set()メソッドを作成
フィールド値を書き込むメソッドをクラスに追加する場合にチェックします。クラスのフィールドにsetterを指定する場合、クラスのユーザーが潜在的なフィールド値の変更を表示する方法も指定する必要があります。
バインディング・ステータス

バインド済、制約済、またはバインドなしのいずれかを指定します。

次のいずれかを使用します。

  • 実行時にフィールドが変更された場合にイベントを発生させるバインド済フィールド

    このフィールド型のsetterはfirePropertyChange()コールを含みます。変更に反応するように、コンポーネントをイベント・リスナーとして登録できます。

  • 拒否可能な変更イベントを発生させる制約済フィールド

    登録されたリスナーは、変更に反応し、新規の値を確認して、その変更がテストの基準を満たさない場合には、拒否できます。制約済フィールドは、バインド済フィールドのより複雑なフォームです。これらのsetterは、fireVetoableChange()コールとfirePropertyChange()コールの両方を含みます。

  • 変更されたフィールド値に環境外で反応しないようにする場合のバインドなしフィールド

    これは、バインド済でも制約済でもない単純なフィールド型です。フィールドを設定する標準的なメソッドを持ちます。

OK

このボタンをクリックすると、「フィールド設定」ダイアログが閉じ、クラス・エディタのフィールド・ページにある「宣言済フィールド」リストがフィールド設定によって更新され、フィールド宣言がクラスに挿入され、(オプションで)クラスにアクセッサが挿入されます。次のような場合は、エディタがフィールドのアクセッサ・メソッドを上書きすることを警告するダイアログ・ボックスが表示されます。