複雑なクラスから抽出されたおもちゃの例を次に示します。
public class MyClass {
public function MyClass() {
trace('Created');
}
public static function makeObjectAsync(callback:Function):void {
inner();
function inner():void {
var object:MyClass = new MyClass(); // line 10
callback(object);
}
}
}
静的関数を呼び出した後:
MyClass.makeObjectAsync(function(object:Myclass):void { ... })
次の実行時例外が 10 行目で発生します。
TypeError: Error #1007: Instantiation attempted on a non-constructor.
これはなぜですか?どうすればよいですか?
編集
動作するようnew (MyClass)()
です。今、私はおそらくもっと混乱しています。