このWikiは古くなりました:新しいWikiへ移動


[[命令リファレンス]]
----

*extends
 

親クラスを設定します。親クラスを設定すると、親クラスの持っているすべての変数およびメソッドを利用できるようになります。

//plainForm
書式:
 extends クラス名;
 

-extendsはかならずファイルの先頭に書いてください。
-'''クラス名'''で指定されたクラスを親クラスにします。


**例1
  
 //----Enemy.tonyu
 extends SpriteChar;
 function atariHantei() {
    if (crashTo($Jiki)) $Jiki.die();
 }
 //----End Of Enemy.tonyu
 //----Teki1.tonyu
 extends Enemy;
 while (1) {
     x=x+1;
     atariHantei();
     update();
 }
 //----End of Teki1.tonyu-----
 //----Teki2.tonyu
 extends Enemy;
 while (1) {
     y=y+1;
     atariHantei();
     update();
 }
 //----End of Teki2.tonyu-----
 //----Jiki.tonyu (オブジェクト名は$Jikiにします)-----
 extends SpriteChar;
 while (1) {
    if (getkey(39)>0) x+=3;
    if (getkey(37)>0) x-=3;
    if (getkey(40)>0) y+=3;
    if (getkey(38)>0) y-=3;
    update();
 }
 //----End of Jiki.tonyu-----






Teki1,Teki2 からatariHanteiを呼び出していますが、atariHanteiは親クラスのEnemyで定義されています。

このように同じメソッドを複数のクラスで使うときは親クラスを設定すると便利です。

 特に、atariHanteiの内容を変更するときに、各クラスに同じメソッドが複数のクラスにあると、すべてのメソッドを変更する必要がありますが、親クラスに定義すれば1箇所のみの変更ですみます。
----
[[命令リファレンス]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS