12/09/25 21:04:47.90 p0OmmxiH
以下のスクリプトは、dm(abc)の部分でエラーになります。しかし、その上行のコメントを外すと、エラーになりません。また、class A のコンストラクタで abc = のように初期化しても
エラーになりません。どうやら class Bのコンストラクタの時点で、A.abcは存在しないのが原因なようなのですが、
そういうものなのかどうか、どなたか詳細をご教示頂けないでしょうか。
子クラスでpropertyを定義すると、親クラスの同名のメンバはvoidになってしまうのでしょうか。
class A {
var abc = "文字列";
}
class B extends A {
function B() {
// abc = 'a';
dm(abc);
}
property abc {
setter(x) { super.abc = x; }
getter { return super.abc; }
}
}
var bobj = new B();
同じように親クラスのメンバと同じ名前で子クラスでプロパティのものが、例えばButtonLayer.tjs中にwidthプロパティとして実装されていて、そっちはちゃんと動いて
いることは確認しています。もちろん、メンバ名とpropertyを別の名前にすれば問題ないのはわかりますが…。