[AS][自分用]ActionScript3.0デザインパターンの読書メモ(5)
-シングルトンパターン
シングルトンのルール
・(シングルトンインスタンスは)プライベートなstaticなプロパティに保持
・(シングルトンインスタンスに)アクセスするにはパブリックなメソッドを使う。(インスタンスが無い場合は生成)
汎用的なシングルトンパターン
package {
public class Singleton {
//Singletonインスタンスを保持
static private var _instance:Settings;
//他のオブジェクトからnew Singleton()では作らせないようにする
public function Singleton(enforcer:SingletonEnforcer) {
}
//インスタンス作成はこのメソッドで
public function getInstance():Settings {
//一回目はインスタンスを作る
if (Settings._instance == null){
Settings._instance = new Settings(new SingletonEnforcer));
}
//保持しているインスタンスを返す
return Settings._instance;
}
}
}
//new Singletonさせないためのクラス
class SingletonEnforcer{}
Tweet