アプリなどを開発するブログ

React Native / Swift / Ruby on Railsなどの学習メモ。


ActionScriptでシングルトンクラス

Flashで、ムービーのどこからでも参照できるデータマネージャー的なものが欲しい時、
シングルトンクラスを使うのが便利。

シングルトンクラスというのは、インスタンスを一個しか持たないクラス。

一度データを読み込んでおけば、重複してデータを読み込んだりする事を防げるし、
クラス同士で参照を渡し合ったりする必要もないので便利。

// シングルトンのデータマネージャクラス
public class MoviePlayerManager
{
    // 最初に内部で自分自身のインスタンスをひとつ作る
    private static  var _sharedManager:MoviePlayerManager = new MoviePlayerManager;    
        
    public function MoviePlayerManager()
    {
        //すでにインスタンスを生成された履歴があれば、エラーを返す
        if (_sharedManager) 
        {
            throw new ArgumentError("シングルトンクラスです");
        }
    }

    public static  function get sharedManager():MoviePlayerManager 
    {
        return _sharedManager;
    }

    public function testFunction():void
    {
        trace("test");       
    }

外部から使いたいときは、

MoviePlayerManager.sharedManager.testFunction();

みたいにやればOK!

捗ります。オススメ。