as3中如何通过命名空间来实现方法的“重载”

OverLoadByNameSpace.as文件

 
package{
public class OverLoadByNameSpace{
//类内部定义命名空间
public namespace good;//它是一个静态的属性,其uri为:OverLoadByNameSpace/good
public namespace bad;//它是一个静态的属性,其uri为:OverLoadByNameSpace/bad
//得到good namespac
public function getGoodNameSpace():Namespace{
return good;
}
//得到bad namespac
public function getBadNameSpace():Namespace{
return bad;
}
bad function say():void{
trace("bad say");
}
good function say():void{
trace("good say");
}
}
}

动作面板:

 
var ov:OverLoadByNameSpace=new OverLoadByNameSpace();
trace(OverLoadByNameSpace.good);
var g:Namespace=ov.getGoodNameSpace();
ov.g::say();
var b:Namespace=ov.getBadNameSpace();
ov.b::say();