ひがやすを技術ブログ

電通国際情報サービスのプログラマ

Lesson2

前回は、AS2のクラスをnewしてオブジェクトを作成しました。Javaな人には理解しやすいやり方でしょう。
Flexでは、タグを書くことで、クラスをインスタンス化することも出来ます。今回は、これがテーマです。まずは、クラスを定義します。

user_classes/lesson2/Hello.as


import mx.controls.*;

class lesson2.Hello {
var message:String;

function greet():Void {
Alert.show(message);
}
}

前回との違いは、コンストラクタがなくなったこと。タグでクラスをインスタンス化する時は、コンストラクタを(たぶん)指定できないためです。
次は、このクラスを利用するMXMLです。





タグでクラスをインスタンス化するには、タグの名前をクラス名にします。パッケージは、xmlnsで指定します。
タグの属性で指定した値は、自動的にプロパティに設定されます。
前回は、varで変数名を指定していましたが、タグを使う場合は、idで変数名を指定します。
異なるパッケージに同じクラスが存在するときは、<hoge:Hello xmlns:hoge="..."のようにして、プレフィックスを使うことも出来ますが、あまり使う必要はないでしょう。
クラスをタグで使うことで、覚えるのはこれだけ、簡単でしょ。