这会有用吗?
从游戏开始,它会创建一个盒子精灵,这会触发一个自定义事件。
如果我使用公共静态函数和一些事件监听器,例如这个准代码:
public static function tile()
{
if this hears statusbox.statuschanged
and this triggers a static private function
}
static private function
create instances of tile
with
public function tile(id:uint,... )
答案 0 :(得分:0)
没有理由让某个类无法创建自己的实例。您只需要确保它不会在从其自己的构造函数调用的任何方法中执行,或者在任何自动实例化的类变量中执行此操作。否则你会创建一个非终止循环!读取你的准代码相当困难,但听起来你不会在实例化时创建任何内部引用,所以你可能会清楚。无论如何要提供一些例子:
会工作:
package {
public class Tile {
private var _innerTile:Tile;
public function Tile() {
}
public function innerTile_create():Tile {
_innerTile = new Tile();
return _innerTile;
}
}
}
无效:
package {
public class Tile {
public function Tile() {
var innerTile:Tile = new Tile();
}
}
}
也行不通
package {
public class Tile {
private var _innerTile:Tile = new Tile();
public function Tile() {
}
}
}