单例模式 Singleton Pattern

单例模式:

在面向对象的编程中,有时候会要求一个类有且仅存在一个实例,并提供一个全局的访问方法。 所以我们在设计这样的类的时候,就需要思考如何避开构造函数,提供一种机制来实现单例(单一实例)。 全局保持Model的唯一性。让view读取同一个model,这就是单例模式。      

 

package QQB.Model{
 import flash.events.EventDispatcher;

 public class ModelLocator extends EventDispatcher {

  public var allball:int=6;
  private static  var _instance:ModelLocator;

  public function ModelLocator():void {
   if (_instance) {
    throw new Error("只能用getInstance()来获取实例");
   }
  }
  public static function getInstance():ModelLocator {
   if (_instance==null) {
    _instance = new ModelLocator();
   }
   return _instance;
  }
 }
}

 

package {
 import flash.display.MovieClip;
 import QQB.Model.ModelLocator;

 public class test extends MovieClip {
  public var instance:ModelLocator = ModelLocator.getInstance();
  //public var instance:ModelLocator = new ModelLocator();//这个实例一但声明以后声明会报错,实现单例
  public function test():void {
   trace(instance);
   trace(instance.allball);
   
  }
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值