ser*_*oth 1 actionscript actionscript-3
我是ActionScripting的新手,但我做了一些Java.我被告知他们有点相似.我正在编写我的swf文件,并集成了一些AS3.
function init():void{
// do something
}
function init(var string:String):String{
// do something else
}
Run Code Online (Sandbox Code Playgroud)
这是不允许在AS?如果没有,除此之外还有另一种处理方式吗?
提前致谢.
是的,您可以覆盖功能.但是你给出的例子并不是压倒性的 - 它正在超载.对于覆盖函数,您基本上只需创建一个具有相同签名的函数和子类中的所有内容,并在其前面添加单词"override".
但是,您无法直接重载函数.如果需要可变数量的参数,则必须使用可选参数.像这样:
function init(str:String = null):String
{
if (str == null)
{
// do one thing
return null;
}
else
{
// do another thing
return "someString";
}
}
Run Code Online (Sandbox Code Playgroud)
这就是你在AS3中能够做到的最好的事情.至少严格来说,无法超载功能是一种相当普遍的抱怨和语言的明显缺点.
| 归档时间: |
|
| 查看次数: |
425 次 |
| 最近记录: |