Flash/as3/Singleton
ナビゲーションに移動
検索に移動
Singletonパターン(グローバル値をクラスに設定
package {
// ex)var ex:Singleton = Singleton.getInstance();
public class Singleton {
private static var instance:Singleton;
public static function getInstance():Singleton {
if (instance == null) {
instance = new Singleton(arguments.callee);
}
return instance;
}
public function Singleton(caller:Function = null) {
if (caller != Singleton.getInstance) {
throw new Error("SingletonクラスはSingletonクラスです。getInstance()メソッドを使ってインスタンス化してください。");
}
if (Singleton.instance != null) {
throw new Error("Singletonインスタンスはひとつしか生成できません。");
}
init();
}
private function init():void {
// ここからいろいろ書く
}
}
}