在面向对象的编程中,有时候会要求一个类有且仅存在一个实例,并提供一个全局的访问方法。所以我们在设计这样的类的时候,就需要思考如何避开构造函数,提 供一种机制来实现单例(单一实例)。这就是单例模式。另因为在AS3中无法操作线程,因此我们无需考虑多线程情况下的单例。
下面是一个简单的例子:
package
{
public class Singleton {
public static var _instance:Singleton = new Singleton ();
public function Singleton (){
if (_instance){
throw new Error("只能用getInstance方法来获取实例");
}
}
public static function getInstance:Singleton (){
return _instance;
}
}
}