方法重写
如果你是一个类,你可以使用 override
关键字来定义继承类定义的方法:
public class Example {
public function test():void {
trace('It works!');
}
}
public class AnotherExample extends Example {
public override function test():void {
trace('It still works!');
}
}
例:
var example:Example = new Example();
var another:AnotherExample = new AnotherExample();
example.test(); // Output: It works!
another.test(); // Output: It still works!
你可以使用 super
关键字从正在继承的类中引用原始方法。例如,我们可以将 AnotherExample.test()
的主体更改为:
public override function test():void {
super.test();
trace('Extra content.');
}
导致:
another.test(); // Output: It works!
// Extra content.
重写类构造函数有点不同。省略了 override
关键字,只需使用 super()
即可访问继承的构造函数:
public class AnotherClass extends Example {
public function AnotherClass() {
super(); // Call the constructor in the inherited class.
}
}
你还可以覆盖 get
和 set
方法。