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();
复制代码
代码如下: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();
以上就是as3中如何通过命名空间来实现方法的“重载”的详细内容,更多请关注0133技术站其它相关文章!