リプタクのもう覚えられません
Google
Web サイト内
topmemo ▶ クラスの継承

ActionScript

クラスの継承

クラスの継承
クラスの継承とは既にあるクラスを継承し、機能を拡張させる仕組み。元のクラスをスーパークラス(基本クラス,元のクラス)、継承して作られたクラスをサブクラスという。定義方法はサブクラス内のクラス名の後に「extends」入力後、継承したいスーパークラス名を記述。尚、extendの意味は「伸びる」「延ばす」。
スーパークラスのコンストラクタに引数を渡したい場合は、サブクラスのコンストラクタで、「super」ステートメントで記述する。


クラスの継承の構文(サブクラス・継承する側)

package {
	public class クラス名 extends 継承したいクラス名{
		
		//コンストラクタ
        public function クラス名(){
        	super(引数); //スーパークラスのコンストラクタに引数を渡す
        }
	}
}



スーパークラスのサンプル

package {
	public class TestSuper {

		//コンストラクタ
		public function TestSuper(name:String) {
			trace("スーパークラスのコンストラクタを実行");
			trace("スーパクラスの引数: " + name);
		}
		public function sampleMethod1() {
			trace("スーパークラスのメソッドを実行");
		}
	}
}



サブクラスのサンプル

package {
	public class TestSub extends TestSuper{

		//コンストラクタ
		public function TestSub() {
			trace("サブクラスのコンストラクタ実行");

			//スーパークラスへ渡す引数
			super("テスト");
		}
		public function sampleMethod2() {
			trace("サブクラスのメソッドを実行");
		}
	}
}



継承の確認サンプル(アクションフレーム側)

var sample:TestSub = new TestSub();

trace("---------------");
sample.sampleMethod1();
sample.sampleMethod2();


/*
出力結果
サブクラスのコンストラクタ実行
スーパークラスのコンストラクタを実行
スーパクラスの引数: テスト
---------------
スーパークラスのメソッドを実行
サブクラスのメソッドを実行
*/


<参考>
スーパークラスに引数がない場合は、スーパークラスのコンストラクタから実行される。

last update 2009.7.18
参考・出典等
「プロとして恥ずかしくないActionScript3.0の大原則」
「標準ActionScript3.0入門 吉岡梅著」
「ActionScript3.0ポケットリファレンス 馬場ぎんが著」

▲page top

topmemogalleryblogtestaboutlinksmail
Copylight(C)2008-2009 Riptac. All Rights Reserved.