Flex - Singleton

Programming/Flex 2007.09.07 16:00 Posted by 파란크리스마스
출처

http://www.onflex.org/ted/2007/01/singleton-in-mxml.php

Flex을 이용한 디자인 패턴증에서 Singleton을 적용한 방법입니다.
java 처럼 생성자 자체를 private로 할수는 없네요.
다시 말해 생성자를 new로 생성하면 별도의 객체가 만들어지게 됩니다.

Singleton 예)

package
{
    public class ConnectionManager
    {
        private static var instance:ConnectionManager;
       
        private var title:String;
       
    public static function getInstance():ConnectionManager {
      if ( ConnectionManager.instance ) {
        return ConnectionManager.instance;
      } else {
        ConnectionManager.instance = new ConnectionManager();
        return ConnectionManager.instance;
      }           
    }
   
    public function setTitle(src:String):void {
        this.title = title;
    }
   
    public function getTitle():String {
        return this.title;
    }
    }
}

new 객체 생성시

var connMgr1:ConnectionManager = new ConnectionManager();
connMgr1.setTitle("a");
               
var connMgr2:ConnectionManager = new ConnectionManager();
connMgr2.setTitle("b");

mx.controls.Alert.show(connMgr1.getTitle() + "/" + connMgr2.getTitle());

사용자 삽입 이미지






getInstance 매소드 이용시

var connMgr1:ConnectionManager = ConnectionManager.getInstance();
connMgr1.setTitle("a");
               
var connMgr2:ConnectionManager = ConnectionManager.getInstance();
connMgr2.setTitle("b");
               
mx.controls.Alert.show(connMgr1.getTitle() + "/" + connMgr2.getTitle());

사용자 삽입 이미지

신고


 

티스토리 툴바