クラスというもの 

Flashで組み込みを意識したプログラミングをするときには、クラスというものをしっかり理解していなければなりません。オブジェクト指向の説明は後に譲るとして、ここでは、これから先、たとえば、CS5などでWeb系のコンテンツを創る場合にも出てくるクラスの概念を説明しましょう。

 

実はFlashの各要素はこのクラスの概念をビジュアルにしたものなのです。

我々の眼にはあビジュアルに見えているタイムラインをもったムービークリップも実は、クラスとして分類されるものです。
クラスとは何でしょうか?  分類するための属とか目というものにあたります。

たとえば、自動車という属性が一番最初にあるとします。つまりこの自動者クラスの中に、トヨタとか日産とか派生したクラスがあります。
あるいは、
ディーゼルエンジン車、レシプロエンジン車、電気自動車などの派生も考えられます。
このように、派生したクラスはがあるとき、自動車というクラスを「スーパークラス」といいます。
つまり、派生クラスから見ると親にあたります。
また違った見方もできます。
クラスは、オブジェクトを生成するための雛形という見方です。たとえば、トヨタというクラスが生成する実際の自動車には、カローラがあります。 日産というクラスからは、マーチという自動車が生成されますよね。

このとき、これらの自動車を、オブジェクトといいます。トヨタクラスのオブジェクトにカローラがあるのです。トヨタから派生したカローラクラスを定義して、カローラというオブジェクトを生成するでもいいですし。

さてFlashに戻ります。
Flashではすべてのクラスの源流にObjectクラスがあります。Objectはスーパークラスです。
Flashで創るムービークリップは、MovieClipというクラスですが、Objectクラスから派生下クラスです。MoveiClipから派生したクラスHelloをあなたが作ったとしたら、Objectからの関係は以下のような派生になります。

  Helloクラス <- MovieClip <- Object  「<-は派生を表す」

もともとObjectという性質のものがあって、それにタイムラインの要素やそのためのプロパティという変数を用意したときに、それがMovieClipクラスです。あなたがFlashにおいて、HelloというMCを作ればそれも、Objectクラスの良い部分を受け継いでいるのです。

この後説明しますがMovieClipクラスは、シンボルの一形態です。シンボル化するとプログラムのActionScriptで扱いやすくなります。