プローブの static フィールド

プローブの static フィールドは、 プローブが装備されている少なくとも 1 つのメソッドを含むすべての Java クラスに、新規 static フィールドを挿入します。 この静的フィールドはプローブ・フラグメントからアクセス可能で、プローブ済みクラスの内部に情報を保管するために使用できます。

static フィールドという用語は、静的として宣言されている、クラスのフィールドを指します。これは、静的変数クラス・フィールド、またはクラス変数 (インスタンス変数との対比で) と呼ばれることがあります。

static フィールド仕様はオプションです。

static フィールドには、以下のプロパティーがあります。
プロパティー 説明
type 必須。type プロパティーは、新しいフィールドの Java 型ストリングを指定します。ストリングは、完全修飾 Java クラス名でなければなりません。例えば java/lang/StringBuffer などです。型ストリングは、プリミティブ型や配列型ではなく、通常のクラス型を表していなければなりません。 名前付きクラスには、プローブ済みクラスからアクセス可能な、デフォルト・コンストラクター (すなわち、引数を持たないコンストラクター) がなければなりません。
static フィールドを使用すると、その型のデフォルト・コンストラクターへの呼び出しによって、 プローブ済みクラス内で新しい静的フィールドが初期化されます。例えば、型 StringBuffer の static フィールドの追加は、 すべてのメソッドの外側にあるクラスへの次のコードの追加に似ています。
static private StringBuffer fieldName = new StringBuffer();

プローブ済みクラスのためのクラス・イニシャライザーの最初で、初期化が呼び出されます。クラスにクラス・イニシャライザーがない場合は、新たに作成されます。プローブに staticInitializer フラグメントがある場合、静的フィールドが構成された後で、その staticInitializer フラグメント・コードが実行されます。

プローブ・フラグメントは staticField データ項目を使用して、静的フィールドによって参照されるオブジェクトにアクセスできます。フラグメントは、静的フィールドが参照するオブジェクトの状態を変更できますが、静的フィールドに別のオブジェクトを参照させることはできません。

プローブに指定できる static フィールドは 1 つのみです。static フィールドの仕様を使ってプローブ済みクラスに複数の項目を保管するには、ArrayListHashMap、または HashSet といった複合オブジェクト・タイプを使用するか、あるいは、必要なデータ構造を持つ新しいクラスを定義して使用してください。

例:

static フィールドに入るには、 エディターのツリー・ペインの「プローブ (Probe)」を右マウス・ボタン・クリックして、 新規」>「static フィールドとクリックします。編集ペインに Java の型を入力します。

プローブ static フィールドのエントリー。エントリーは /java/lang/StringBuffer です。

関連参照
staticInitializer プローブ・フラグメント型
関連情報
staticField および staticInitializer プローブの例