クラスファイルの作成とパッケージ化

このセクションでは、この例で使用するクラスファイルの作成、命名、パッケージ化を行います (例 : カスタムクラスの記述)。次のセクションでは、(単純なものですが) 完全なクラスファイルの記述方法を示します。パッケージの詳細については、パッケージについてクラスとパッケージとの比較、およびパッケージの操作を参照してください。

クラスファイルを作成する場合は、ファイルの保存先を決める必要があります。次の手順では、作業を単純化するため、クラスファイルと、そのクラスファイルを使用するアプリケーションの FLA ファイルを同じディレクトリに保存します。ただし、Flash でシンタックスをチェックする場合は、ファイルの場所を Flash に指定しておく必要があります。通常、アプリケーションを作成するとき、アプリケーションとクラスファイルの保存先ディレクトリを Flash のクラスパスに追加します。クラスパスの詳細については、クラスパスの設定と修正についてを参照してください。

クラスファイルは ActionScript (AS) ファイルとも呼ばれます。AS ファイルを作成するには、Flash オーサリングツールを使用するか、外部エディタを使用します。たとえば Macromedia Dreamweaver で AS ファイルを作成できます

メモ

 

クラスの名前 (ClassA) は、それを含む AS ファイル ("ClassA.as") と同じ名前にする必要があります。これは非常に重要です。この 2 つの名前が完全に一致しないと、クラスはコンパイルされません。

クラスファイルとクラス宣言を作成するには :

  1. 新しい FLA ドキュメントを作成するために [ファイル]-[新規] を選択し、[Flash ドキュメント] を選択して、[OK] をクリックします。
  2. [ファイル]-[名前を付けて保存] を選択して、ファイルを package_test.fla という名前にし、Flash ドキュメントを現在のディレクトリに保存します。

    後で、この Flash ドキュメントにコンテンツを追加します。

  3. [ファイル]-[新規] を選択し、[ActionScript ファイル] を選択して、[OK] をクリックします。
  4. [ファイル]-[名前を付けて保存] を選択し、com という名前のサブディレクトリを作成してから、次の操作を行います
    1. "com" サブディレクトリ内に adobe という名前の新しいサブディレクトリを作成します。
    2. "adobe" サブディレクトリ内に utils という名前の新しいサブディレクトリを作成します。
    3. 現在の ActionScript ドキュメントを ClassA.as という名前で "utils" ディレクトリに保存します。
  5. 次のコードをスクリプトウィンドウに入力します。
    class com.adobe.utils.ClassA {
    }
    

    上記のコードでは、com.adobe.utils パッケージ内に ClassA という新しいクラスが作成されます。

  6. ActionScript ドキュメント "ClassA.as" を保存します。
  7. [ファイル]-[新規] を選択し、[ActionScript ファイル] を選択して、[OK] をクリックします。
  8. [ファイル]-[名前を付けて保存] を選択し、ファイルに ClassB.as という名前を付けて、前の手順で作成した "ClassA.as" と同じディレクトリに保存します。
  9. 次のコードをスクリプトウィンドウに入力します。
    class com.adobe.utils.ClassB {
    }
    

    上記のコードでは、com.adobe.utils パッケージ内に ClassB という新しいクラスが作成されます。

  10. 変更内容を "ClassA.as" と "ClassB.as" の両方のクラスファイルに保存します。

FLA ファイルで使用するクラスファイルは、コンパイル時に SWF ファイルに読み込まれます。クラスファイルにコードを記述する際、一定の方法論と順序を意識する必要があります。以下のセクションでこれを説明します。

複数のカスタムクラスを作成する場合は、パッケージを使用してクラスファイルを整理します。パッケージとは、所定のクラスパスディレクトリ内にあって、クラスファイルを格納しているディレクトリのことです。クラス名は、宣言されたファイル内における完全修飾名である必要があります。つまり、クラスが格納されたディレクトリ (パッケージ) を反映した名前にしなければなりません。クラスパスの詳細については、クラスパスの設定と修正についてを参照してください。

たとえば、com.adobe.docs.YourClass という名前のクラスは com/adobe/docs に保存します。"YourClass.as" ファイルのクラス宣言は、次のようになります。

class com.adobe.docs.YourClass {
    // クラス
}

メモ

 

パッケージディレクトリを反映するクラス宣言は、次のセクション例 : カスタムクラスの記述で記述します。

そのため、クラスを作成する前に、どのようなパッケージ構造にするかあらかじめ決めておくことをお勧めします。そうしないと、クラスファイルを作成した後に移動する場合、新しい場所を反映させるためにクラス宣言ステートメントを修正しなければなりません。

クラスファイルをパッケージ化するには :

  1. パッケージ名を決定します。

    パッケージ名は、他の開発者にもわかりやすい名前にしてください。また、固有のディレクトリ構造にパッケージ名を一致させる必要があります。たとえば、com.adobe.utils パッケージのクラスは、"com/adobe/utils" フォルダに置く必要があります。

  2. パッケージ名が決定したら、必要なディレクトリ構造を作成します。

    たとえば、パッケージ名が com.adobe.utils である場合、"com/adobe/utils" というディレクトリ構造を作成し、"utils" フォルダにクラスを保存する必要があります。

  3. このパッケージ内に作成するクラスには、すべて com.adobe.utils という接頭辞を使用します。

    たとえば、ClassA という名前のクラスは、完全なクラス名が com.adobe.utils.ClassA で、"com/adobe/utils/ClassA.as" クラスファイル内に配置されている必要があります。

  4. 後でパッケージ構造を変更することになると、ディレクトリ構造だけではなく、各クラスファイル内のパッケージ名、すべての import ステートメント、パッケージ内のクラスへの参照も変更する必要があります。

これ以降のクラスファイル記述方法については、コンストラクタ関数の記述を参照してください。


 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00000790.html