81 lines
1.4 KiB
ActionScript
81 lines
1.4 KiB
ActionScript
package {
|
|
public class Test {
|
|
}
|
|
}
|
|
|
|
class Test2 {
|
|
{
|
|
trace("Class constructor");
|
|
}
|
|
|
|
function Test2() {
|
|
trace("Instance constructor");
|
|
}
|
|
|
|
function method() {
|
|
trace("Instance method");
|
|
}
|
|
|
|
function method2() {
|
|
trace("Instance method 2");
|
|
}
|
|
}
|
|
|
|
class Test3 extends Test2 {
|
|
{
|
|
trace("Child class constructor");
|
|
}
|
|
|
|
function Test3() {
|
|
trace("Child instance constructor pre-super");
|
|
super();
|
|
trace("Child instance constructor post-super");
|
|
}
|
|
|
|
override function method() {
|
|
trace("Child instance method pre-super");
|
|
super.method();
|
|
trace("Child instance method post-super");
|
|
}
|
|
|
|
function method3() {
|
|
trace("Child instance method3 pre-super");
|
|
super.method();
|
|
trace("Child instance method3 post-super");
|
|
}
|
|
}
|
|
|
|
class Test4 extends Test3 {
|
|
{
|
|
trace("Grandchild class constructor");
|
|
}
|
|
|
|
function Test4() {
|
|
trace("Grandchild instance constructor pre-super");
|
|
super();
|
|
trace("Grandchild instance constructor post-super");
|
|
}
|
|
|
|
override function method2() {
|
|
trace("Grandchild instance method2 pre-super");
|
|
super.method2();
|
|
trace("Grandchild instance method2 post-super");
|
|
}
|
|
|
|
override function method3() {
|
|
trace("Grandchild instance method3 pre-super");
|
|
super.method3();
|
|
trace("Grandchild instance method3 post-super");
|
|
}
|
|
}
|
|
|
|
trace("Script initializer");
|
|
var x = new Test3();
|
|
x.method();
|
|
x.method2();
|
|
x.method3();
|
|
|
|
var y = new Test4();
|
|
y.method();
|
|
y.method2();
|
|
y.method3(); |