我试图更好地理解OOP。
我只想跟踪子类中基类的公共变量。不幸的是,它并没有像我编写代码那样工作。你能说出原因吗?你怎么能做到这一点?
基类:
package {
import flash.display.MovieClip;
public class Main extends MovieClip {
public var myvar:String = 'hello world';
public function Main() {
// constructor code
}
}
}
子类:
package {
import Main;
public class Subclass extends Main {
public function Subclass() {
trace(myvar); //it doesn't outputs anything
}
}
}
答案 0 :(得分:0)
如果要跟踪子类中的var(已在基类中声明),则必须在另一个类中创建子类的实例,例如主要课程。代码如下所示:
主要班级:
package {
import flash.display.MovieClip;
import Subclass;
public class Main extends MovieClip {
private var subclass = new Subclass();
public function Main() {
// constructor code
}
}
}
基类:
package {
public class Baseclass {
public var myvar = "hello world";
public function Baseclass() {
}
}
}
子类:
package {
public class Subclass extends Baseclass{
public function Subclass() {
trace(myvar); //console output: hello world
}
}
}