请问如何将一个对象转换为另一种类型?在AS3中,我尝试将(objectType)放在变量前面,但它不起作用,下面我将鱼的对象添加到子项中,当触发鼠标按下时,我将鱼返回,然后调用鱼做什么。但是我无法调用自定义类 Fish 的方法,因为它是一个显示对象。
private function onMouseDownTriggered(e:MouseEvent):void
{
var food:Food = new Food(this, _stageRef.mouseX, _stageRef.mouseY);
for (var i :int = 0; i < this.numChildren; i++)
{
var fish : fish= this.getChildByName("fish" + i);
fish.getFood(food);
}
}
最佳答案
AS3 中的强制转换可以通过以下方式实现:
var fish:Fish = Fish(this.getChildByName("fish" + i));
or
var fish:Fish = this.getChildByName("fish" + i) as Fish
请记住,第一个强制转换表示法具有更多限制,并且在未满足强制转换限制时将有效地导致运行时异常。
第二种表示法更加宽松,不会导致任何运行时异常。 这可能很容易出错,应该小心处理。
干杯
关于flash - 将显示对象转换为自定义类对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6490427/