Revision: 19815
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 31, 2009 17:56 by chrisaiv
Initial Code
package { public class Singleton { private static var _instance:Singleton; private static var _okToCreate:Boolean = false; public function Singleton() { if( !_okToCreate ){ throw new Error("Error: " + this + " is not a singleton and must be " + "accessed with the getInstance() method"); } } public static function getInstance():Singleton { if( !Singleton._instance ){ _okToCreate = true; _instance = new Singleton(); _okToCreate = false; } return _instance; } } }
Initial URL
Initial Description
There are a variety of ways to create a Singleton in AS3 but because Adobe wants to be ECMA compliant, there's no way to do it (like in Java) using a private constructor. Writing a singleton this way will give you a runtime warning if something goes wrong.
Initial Title
AS3: My favorite example of Singleton
Initial Tags
Initial Language
ActionScript 3