【USA在庫あり】 プロックス PROX ピストンキット 10年以降 RM-Z250 76.98mm STD 168333 JP店


 >  > 【USA在庫あり】 プロックス PROX ピストンキット 10年以降 RM-Z250 76.98mm STD 168333 JP店

【送料無料 N-BOX タントカスタム ワゴンR】 165/55R15 15インチ MZ SPEED エムズスピード J694 5J 5.00-15 ROADCLAW ロードクロウ RP570(限定) サマータイヤ ホイール4本セット

カヤバ New SR スペシャル 1台分 ショック クラウン LS120【NSG4753A×2+NSG4793×2】KYB New SR SPECIAL ショックアブソーバー サスペンションキット【店頭受取対応商品】 ディクセル Specom-α ブレーキパッド フロント スバル エクシーガ クロスオーバー7 YAM 2015年04月~ クラッチ シングル【クスコ】クラッチ カッパーシングルディスク 00C 022 R122 トヨタ カローラ ランクス NZE124 NARDI ステアリング トヨタ ライトエース/タウンエース/マスターエース 30/40/50系 11/4~16/7 FET BOSS KIT(FET ボスキット)・NARDI(ナルディ) ステアリングセット ステアリングボス BOSS〔FB537〕/ステアリング〔N753〕 【SSR】 EXECUTOR EX01 (エグゼキューター EX01) 19インチ 10.0J PCD:120 穴数:5 inset:45 フラットチタン [ホイール1本単位] [H] 【USエヌファブ 直輸入正規品】 n-Fab ダッジ ラム レギュラーキャブ 6.4フィートベッド 2002-2008年式 ナーフステップ ベッドアクセス ツヤありブラック

Macromedia Flash非公式テクニカルノート

PROX STD JP店 168333 【USA在庫あり】 76.98mm 10年以降 ピストンキット プロックス RM-Z250 76.98mm ピストンキット

ID: FN0204001 Product: Flash

Platform: All
Version: MX

1. superによるスーパークラスの初期化とメソッドの実行
MXから実装された'super'演算子を使用すると、サブクラスのコンストラクタでスーパークラスを初期化したり、サブクラスのメソッドからスーパークラスのメソッドを呼出すことができます。'super'演算子の使用法方について理解するためには、「継承」に関する基本的な知識が必要となります。「継承」については、オンラインヘルプ「ActionScript 言語について」>「カスタムオブジェクトについて」>「継承の作成」をご参照ください。

サブクラスのコンストラクタでスーパークラスを初期化し、サブクラスのメソッドからスーバークラスのメソッドを呼出すスクリプトのサンプルが、以下です。

Person = function (name) {
  this.name = name;
};
Person.prototype.getInfo = function() {
  return this.name;
};
Profile = function (name, hobby) {
  // [1]スーパークラスのコンストラクタを呼出して初期化
  super(name);
  this.hobby = hobby;
};
// [2]スーパークラスのインスタンスを'prototype'に継承
Profile.prototype = new Person();
// [3]サブクラスにメソッドを設定
Profile.prototype.getInfo = function() {
  // [4]スーパークラスのメソッドを呼出す
  var name = super.getInfo();
  return name+":"+this.hobby;
};
// [5]コンストラクタによるインスタンスの生成とメソッドの実行
madScripter = new Profile("Fumio", "Bug fixing");
trace(madScripter.getInfo());
// 出力ウィンドウの結果
Fumio:Bug fixing

スクリプト中に記載したコメントに沿って、簡単にご説明します。

[1]サブクラス"Profile"のコンストラクタの中で、スーパークラスを'super'演算子で呼出し、引数を渡しています。ただし、コンストラクタを定義した段階では DUNLOP ダンロップ エナセーブ EC204 ENASAVE サマータイヤ 215/60R17 WEDS ウェッズ Leonis レオニス VT ホイールセット 4本 17インチ 17 X 7 +42 5穴 114.3 【送料無料】CELLSTAR DRC-600 [バッテリー充電器 (フロート+サイクル充電 12Vバッテリー専用)]、まだ関数中のステートメントは実行されません。実際に処理が行われるのは、[5]でコンストラクタを呼出したときになります。

[2]サブクラス"Profile"の'prototype'プロパティに、スーパークラス"Person"のコンストラクタから生成したオブジェクトインスタンスを設定しています。

注意しなければいけないのは、このステートメントは、サブクラスの'prototype'プロパティを、スーパークラスのオブジェクトインスタンスで書替えているということです。したがって、サブクラスの'prototype'にメソッドやプロパティを設定するのは ホイール WEDS JOKER MAGIC 16インチ 2本セット 5H114.3 6.5J+53 業販4本購入で送料無料 4G 冬季ホイール ウェッズ マジック 18インチステップワゴンRG系WORK エモーション T7R ホワイト 7.5Jx18NANOエナジー 3プラス 215/45R18、このステートメントの後に行わなければなりません。たとえば 【送料無料】 205/50R17 17インチ WEDS ウェッズ ザミック ティート 6.5J 6.50-17 DUNLOP ダンロップ ルマン V(ファイブ) サマータイヤ ホイール4本セット フジコーポレーション、つぎの[3]のメソッド設定をこのステートメントより前に記述すると、

【USA在庫あり】 プロックス PROX ピストンキット 10年以降 RM-Z250 76.98mm STD 168333 JP店,[#tong##]

 プロックス PROX ピストンキット 76.98mm STD10年-17年 スズキ RM-Z25001.3341.C JP店

、その設定は'prototype'プロパティの書替えによってクリアされてしまいます。

また、[1]でスーパークラスを初期化する前に、このステートメントがコンストラクタを呼出していることにも、留意しておく必要があります。たとえば、スーパークラスの初期化で、コンストラクタが呼出された回数をプロパティなどに使用する場合は 、この処理が回数にカウントされてしまうことになります。

[3]サブクラスの'prototype'プロパティに、メソッドを設定しています。

[4]メソッド中で、'super'演算子を使ってスーパークラスの同名のメソッドを呼出しています。

2. コンストラクタ中に定義したメソッド
前述のサンプルでは、メソッドをクラスの'prototype'プロパティに定義しました。これに対して、メソッドをコンストラクタの中でインスタンスに対して設定する方法も考えられます。けれど、この方法は推奨されていません(オンラインヘルプ「ActionScript 言語について」>「カスタムオブジェクトについて」>「カスタムオブジェクトにメソッドを割り当てるには」参照)。コンストラクタからオブジェクトを生成するたびに、インスタンスに対して個別にメソッドが定義されることになるからです。

'super'演算子でスーパークラスのメソッドを実行する場合には、スーパークラスのコンストラクタ中で定義したのでは、正しく呼出すことができません。前述のサンプルのメソッド定義を、コンストラクタ中で行うように書替えたのが以下のスクリプトです。

Person = function (name) {
  this.name = name;
  // コンストラクタ中でメソッドを定義
  this.getInfo = function() {
    return this.name;
  };
};

【USA在庫あり】 プロックス PROX ピストンキット (株)タンガロイ 10年以降 RM-Z250 76.98mm / STD 168333 JP店


Profile = function (name, hobby) {
  super(name);
  this.hobby = hobby;
  // コンストラクタ中でメソッドを定義
  this.getInfo = function() {
    var name = super.getInfo();
    return name+":"+this.hobby;
  };
};
Profile.prototype = new Person();
madScripter = new Profile("Fumio", "Bug fixing");
trace(madScripter.getInfo());
// 出力ウィンドウの結果
:Bug fixing

出力ウィンドウの結果を見ると、スーパークラス"Person"のコンストラクタ中に定義したメソッドが呼出されていません。'super'演算子を使って呼出すメソッドは、

【USA在庫あり】 プロックス PROX ピストンキット 10年以降 RM-Z250 76.98mm STD 168333 JP店

、クラスの'prototype'に定義する必要があります。

3. __proto__を使った継承
__proto__による継承でsuperを使う」をご参照ください。

_____

作成者: 野中文雄
更新日: 2003年5月15日スクリプト中の不要な引数削除
更新日: 2002年4月29日 スクリプト中の改行漏れ修正
作成日: 2002年4月9日


Copyright ©【USA在庫あり】 プロックス PROX ピストンキット 10年以降 RM-Z250 76.98mm STD 168333 JP店 All Rights Reserved. © 2001-2006 Fumio Nonaka.  All rights reserved.
   
{yahoojp} {fumiononaka.com} jpprem01-zenjp40-wl-zd-14985 {yahoojp}jpprem01-zenjp40-wl-zd-14985