class A{
function ei(argu:B):A{return this;}
}
class B extend A{
function bee():void{}
//重写方法时,可以返回原有返回值的子类。接受的参数可以是原有参数的父类。
override function ei(argu:A):B{return this;}
}
var a:A = new B;
if(a is B)
a.bee();//在这个代码块中,a必定是B的实例,因而可以调用B的方法
1
FrankFang128 2015-05-08 13:18:29 +08:00
希望没有 class 关键字
|
2
c742435 OP @FrankFang128 也许你说的是js?我不懂js哈 我只是个as程序员
|
3
saber000 2015-05-09 02:03:45 +08:00
个人觉得A的设计很丑陋,A只能处理被B继承的情况.
class A{ function get_type():str { return 'A'; } } class B extend A{ function get_type():str { return 'B'; } } var a:A = new B; if (a.get_type() == 'B') { var b:B = (B)a; b.balabala(); } 这样设计呢? |