我很难理解自定义事件,并且我不断收到同样的错误:
1203:在基类flash.events:Event中找不到默认构造函数。
我尝试在线阅读解决方案,但没有任何帮助。我想知道我的错误是什么。基本上,我想要做的是创建一个类,根据难度级别(总共3个),在场景中创建不同的对象。这是代码:
我用这样的dispatchEvent调用它:
dispatchEvent(new creationObjets(_Difficulte));
然后,
package cem{
import flash.events.*;
import flash.display.*;
public class creationObjets extends Event
{
public function creationObjets(pDifficulte) {
trace(pDifficulte);
}
}
}
我不知道我做错了什么(或者我正在做什么,期间......哈哈)。 如果你知道答案,也许一点点解释会帮助我很多! 谢谢!
*编辑:我刚添加了super(pDifficulte);跟踪后没有出现错误。我不知道super()的作用。我只是根据例子做到了......
答案 0 :(得分:8)
你应该这样做:
public class NewClass extends Event{
public function NewClass(type:String) {
super(type);
trace("whatever");
}
}
super()
方法调用Event类的构造函数。如果您对OOP有一些了解,那么您应该熟悉它。 C#等价物是base()
答案 1 :(得分:2)
代码super()运行您正在扩展的类中的方法。在这种情况下,它将在Event类中运行构造函数。