我希望有人可以解釋有關訪問超類的變量的子類。AS3訪問子類的超類變量
我發現子類只能訪問在超類的構造函數中設置的變量。有沒有辦法解決?
package Character {
import flash.display.MovieClip;
public class Character extends MovieClip {
protected var test_declared_early:String = "declared early";
protected var test_declared_late:String;
private var knight:Knight;
public function Character() {
// constructor code
}
public function init(_local_stage:Object){
test_declared_late = "declared late";
knight = new Knight("matt");
}
}
我嘗試訪問子類中的字符串,但只能得到一個:
package Character{
public class Knight extends Character.Character {
private var myName:String;
public function Knight(local_name:String) {
// constructor code
myName = local_name;
trace(super.test_declared_early); //this is not null
trace(super.test_declared_late); //this is null
}
}
}
我的整個測試項目可以在這裏找到: http://www.mediafire.com/?46zwpfo4h47cdaq
謝謝!
問題是你在init被調用之前正在追蹤'test_declared_late'。跟蹤發生在構造函數中,init發生之後。 – 2010-08-16 20:05:43