Java クラスのインポート済みタイプを作成

Z and I Emulator for Web マクロは、Java クラスをインポートする方法として、インポート型を使用します。つまり、インポート型をまず作成し、特定の Java クラスに関連付ける必要が あります。この作業は、マクロごとに、Java クラス 1 つに対して 1 回のみ行います。インポート済みタイプを作成するには、次の手順で行います。
  1. 「変数 (Variables)」タブの「インポート (Import)」ボタンを クリックする。「インポート」ポップアップ・ウィンドウが 表示されます。
  2. 「インポート型」リスト・ボックスで、項目「<new imported type>」を選択する。
  3. 型のクラス名を入力する (例: java.util.Hashtable)。パッケージ名 (ある場合) を含む、完全修飾クラス名を入力する必要があります。
  4. 短縮名を入力する (例: Hashtable)。短縮名を指定しない場合、マクロ・エディターは 完全修飾クラス名を短縮名として使用します。短縮名を指定すると、インポート済みタイプを参照する際に、 短縮名または完全修飾クラス名のどちらも使用できます。
  5. 「OK」をクリックします。
このインポート済みタイプに属する変数を作成するには、 変数を通常の方法で作成しますが、インポート済みタイプを変数のタイプとして 選択します。インポート型の変数を作成するには、次の手順で行います。
  1. 「変数」リスト・ボックスの最後にある 「<new variable>」項目をクリックする。マクロ・エディターは、名前 ($a1$ など)、型 (string)、初期値 (ブランク) など、デフォルトの初期値を通常どおり表示します。
  2. 「名前」入力フィールドに、任意の名前 (例: $ht$) を入力する。
  3. 「型」リスト・ボックスで、インポート型を選択する。例えば、Hashtable (型をインポートしたときに短縮名を指定した場合)、または java.util.Hashtable (完全修飾クラス名と同じ、デフォルトの短縮名を受け入れた場合) を選択します。
  4. 「初期値」フィールドでは、フィールドをブランクのままにする (初期値は null になる) か、クラスのインスタンスを戻すメソッドを指定できます。例えば、$new Hashtable()$ (短縮名を使用)、または $new java.util.Hashtable()$ (完全修飾クラス名を使用) を指定します。
コンストラクターはドル記号 ($) で囲む点に注意してください。変数の名前 をドル記号で囲む必要があるように、Java メソッドの呼び出しも ドル記号で囲む必要があります(これは、ドル記号で囲むことにより、 項目を評価する必要があることをマクロ・ランタイムに示すためです)。

「インポート」ポップアップ・ウィンドウに戻ると、 「インポート型」リスト・ボックスを使用して型を新規に作成でき、既に作成済みの型を編集または削除することもできます。型を新規に作成するには、リストの最後にある 「<new imported type>」 をクリックします。型を編集するには、「インポート型 (Imported Types)」リスト・ボックス からタイプを選択し、「クラス (Class)」と「短縮名 (Short Name)」の 入力フィールドで値を変更します。タイプを除去するには、タイプを選択して「除去」をクリックします。

短縮名を指定する際には、特定の制限のもとで任意の名前を使用でき ます (変数名とタイプ名を参照)。

コード・エディターでは、<type> エレメントを使用してインポート型を作成します。マクロ・スクリプト内のインポート済みタイプすべてを含む収容エレメント <import> があり、それぞれのインポート済みタイプごとに <type> エレメントがあります。図 1 は、インポート済みタイプを宣言する <import> エレメントと、それに続く、インポート済みタイプに属する変数を作成および初期化する <vars> エレメントを示しています。
図 1. インポート済みタイプとそのタイプの変数
<import>
   <type class="java.util.Hashtable" name="Hashtable" />
</import>

<vars>
   <create name=$ht$ type="Hashtable" value="$new Hashtable(40)$" />
 </vars>
上の図で、<import> エレメントには <type> エレメントが 1 つ含まれ、このエレメントには class 属性 (完全修飾クラス名 java.util.Hashtable を指定) と name 属性 (短縮名 Hashtableを指定) があります。<vars> エレメントには <create> エレメントが 1 つ含まれ、このエレメントは名前 ($ht$)、型 (Hashtable)、および初期値 (ここでは null ではなく、クラスのインスタンスを戻すコンストラクター $new Hashtable(40)$ の呼び出し) を通常どおり指定します。

コード・エディターを使用している場合は、インポート型 (<type> エレメント) をすべて <import> エレメント内に入れる必要があります。<import> エレメント自体は、<HAScript> エレメントの内部 (<HAScript> エレメントを参照)、かつ <vars> エレメントの前に置く必要があります。