※ ChatGPTを利用し、要約された質問です(原文:継承元クラスのプロパティを参照する手段)
継承元クラスのプロパティを参照する手段
このQ&Aのポイント
ActionScrip3において、外部クラスで継承元クラスのプロパティを参照する方法について質問があります。
ClassAとClassBというカスタムクラスを作成し、プロパティを参照する処理を行いたいと思っています。
ClassBのコンストラクタからClassAのプロパティを参照しようとしたところ、一部のプロパティの値がnullになってしまいました。タイムラインから設定したプロパティの値を継承したClassBから参照・変更する方法を教えてほしいです。
お世話になります。
ActionScrip3に関する質問です。
現在、カスタムクラスを勉強しております。
外部クラスでClassA、ClassBを作成し、
ClassAにある処理の途中でClassBを実行し、ClassBの中からClassAのプロパティを参照しにいく
処理を行いたいと思い、ClassBのコンストラクタからClassAのプロパティをtraceしました。
プロパティppt2は「かきくけこ」が出力されましたが、ppt1は「null」になってしまいました。
恐らく、タイムラインからClassAに対して設定したプロパティの値は見にいけていないようですが、
タイムラインから設定したプロパティの値を継承したClassBから参照しにいく方法はありますでしょうか?
下記ソースと同じ方法でなくても結構ですので、タイムラインから設定した
スーパークラスのプロパティ値をサブクラスから参照・変更できる方法を
ご教授いただければと存じます。
お手数ではありますが、宜しくご教授ください。
宜しくお願いいたします。
/* タイムライン側の処理
-----------------------*/
var test:ClassA = new ClassA();
test.ppt1 = "あいうえお";
test.goNext();
/* ClassAの処理
-----------------------*/
package {
// インポート記述は省略
public class ClassA {
var ppt1:String;
var ppt2:String = "かきくけこ";
// コンストラクタ
public function ClassA() {
}
public function goNext():void {
var classb:ClassB = new classB();
}
}
}
/* ClassBの処理
-----------------------*/
package {
// インポート記述は省略
public class ClassB extends ClassA {
// コンストラクタ
private function ClassB() {
trace(ppt1);
trace(ppt2);
}
}
}
お礼
H240S18B73様 いつもありがとう御座います。 クラスプロパティについて調べました。 また、クラスプロパティを使うことで問題となっている部分も 解決することができました。