クラス

クラスは、オブジェクトの抽象表現です。 クラスには、オブジェクトが保持できるデータの型およびオブジェクトが表すことができるビヘイビアに関する情報が格納されます。 相互にやり取りする 2、3 個のオブジェクトのみを含む小さなスクリプトを記述する場合には、このような抽象化の利点はわかりにくいかもしれません。 しかし、プログラムのスコープが拡大し、管理しなければならないオブジェクトの数が増加すると、クラスを使用することで、オブジェクトの作成方法と、オブジェクトの相互のやり取りの方法を制御しやすくなります。

ActionScript 1.0 では、Function オブジェクトを使用してクラスに似たコンストラクトを作成できました。 ActionScript 2.0 では、classextends などのキーワードによるクラスのサポートが正式に追加されました。ActionScript 3.0 では、ActionScript 2.0 で導入されたキーワードを引き続きサポートするだけでなく、 protected および internal 属性によるアクセス制御の強化や、final および override キーワードによる継承の高度な制御などの新しい機能も追加されています。

Java、C++、C# などのプログラミング言語でクラスを作成した経験があれば、ActionScript でも同じように作成できます。 ActionScript では、classextendspublic など、多くの同じキーワード名と属性名を共用しています。次の節では、これらについて説明します。

注意: この章では、"プロパティ" という用語は、変数、定数、メソッドを含む、オブジェクトまたはクラスのメンバーを示します。 また、"クラス" と "静的" という用語は同じ意味で使用されることが頻繁にありますが、この章ではこの 2 つの用語は区別します。 例えば、"クラスプロパティ" という語句は、静的メンバーだけではなくクラスのすべてのメンバーを指します。