您的位置:首页 > 其它

关于as3中如何实现函数的重载

2013-04-17 09:44 253 查看
在java中我们都知道函数的重载是根据方法中参数的个数不同,参数的顺序不同来动态的选择方法。

那么在as3中能不能呢?

首先必须声明,在as3中是不能实现像java那样的函数重载,例如:

package {

import flash.display.Sprite ;

public class HelloImpl extends Sprite {

public function fun(){

trace("无参");

}

//对fun方法进行重载,

public function fun(a:int){

trace(“有一个参数”);

}

}

}

编译时将报错,提示:函数不能同名;

那么可不可在as3中实现类似这种重载的功能呢?答案是肯定的,运用可变参数符号 ... ,对于熟悉java的来说,这个符号想必也不会陌生的。

package {

import flash.display.Sprite ;

public class HelloImpl extends Sprite {

public function fun(...args){

if(args.length==0){

trace("无参");

}

if(args.length==1){

trace("有一个参数");

}

}
}

}

这样就实现了所谓的as3中的函数重载功能!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: