スーパークラスのクラスメンバーを利用する場合の注意についての説明のポイントがずれていたのでリライトしました。(書いていたときは何か混乱していたのかなあ・・・)
本文差し替え:
クラス継承すると、サブクラスのスクリプトからスーパークラスのクラスメンバーとインスタンスメンバーを利用できるようになります。ただし、クラスメンバーについてはそれはサブクラスのクラス定義スクリプトでの利用に限られます。
たとえば、スーパークラスMyClassAにクラスメンバーとして変数a、メソッドtestA()が定義してあるとき、サブクラスのMyClassBに対してMyClassB.aあるいはMyClassB.testA()を実行した場合を試してみましょう。
# MyClassA.asとMyClassB.asのスクリプトはそのままです。
p.202 下から5行目の2行とスクリプト。(2番目のパラグラフ)
本文とスクリプト差し替え:
MyClassBはMyClassAを継承していることから、MyClassBのクラスメンバーを参照する場合と同じようにMyClassAのクラスメンバーを利用できるように思えます。しかし、MyClassBからMyClassAのクラスメンバーを呼び出すと未定義エラーになります。
//未定義エラーになる。
MyClassB.classMethod();
trace(MyClassB.classProp);