In AS there are no private constructors which means you can't create the normal Singleton, as if the constructor is public, you can great more instances of it. In that code the getInstance() sets a var which the constructor checks. If this var isn't true (and it can only be set in getInstance()), then the constructor will throw an error.
There a few decent methods up there now, and another in the comments here http://www.tink.ws/blog/stricter-singletons/
I posted it as there was original a singleton on there, that you could actually create more than one instance of.