单件模式(singleton)
2009-11-23 12:42
148 查看
我前面一个人买了一条巨大的鸡腿,我说我也要一条,师傅说,就这一条
举例:单件模式的应用是相当广泛的,它确保每个实例在全局范围内只被创建一次,我们flash里的mc大多数是单件。内核里的核心组件也只是单件,比如我的消息映射列表(见后)。
按照单件模式的严格定义,应该让类负责保存它的唯一实例。但是我在Flash里还想不到怎么实现这一点,或者实现它的意义所在,但另外一点我们可以做到,就是在全局范围内只提供该对象的唯一访问点。这可以由层次关系做到,把对该对象的访问具体实现全部封装在下层,只给上层提供唯一的访问点(原因是,上层不知道这个单件的具体信息,比如路径)。
看我内核文件的一部分:
//Core.as
//内核
class Core {
var strucGlobalParam:ConfigVariables;
//站点信息
var xmlConfig:XML;
//站点信息的xml化对象
var ArrayStructureInitial:Array;
//用来提供给loadObject对象的数组
var ArrayForBtn:Array;
//用来初始化导航条组件的数组
var objInitial:loadObject;
//读取影片的对象
var objMessageMap:MessageMap;
//消息映射组件
}
这是我的内核类也就是全站最核心类的数据结构。里面的数据只有通过下层的BasicMovie,OriginalFunctionObject等类(见后)直接访问。
备注,核心思想是,确保只有一个。
举例:单件模式的应用是相当广泛的,它确保每个实例在全局范围内只被创建一次,我们flash里的mc大多数是单件。内核里的核心组件也只是单件,比如我的消息映射列表(见后)。
按照单件模式的严格定义,应该让类负责保存它的唯一实例。但是我在Flash里还想不到怎么实现这一点,或者实现它的意义所在,但另外一点我们可以做到,就是在全局范围内只提供该对象的唯一访问点。这可以由层次关系做到,把对该对象的访问具体实现全部封装在下层,只给上层提供唯一的访问点(原因是,上层不知道这个单件的具体信息,比如路径)。
看我内核文件的一部分:
//Core.as
//内核
class Core {
var strucGlobalParam:ConfigVariables;
//站点信息
var xmlConfig:XML;
//站点信息的xml化对象
var ArrayStructureInitial:Array;
//用来提供给loadObject对象的数组
var ArrayForBtn:Array;
//用来初始化导航条组件的数组
var objInitial:loadObject;
//读取影片的对象
var objMessageMap:MessageMap;
//消息映射组件
}
这是我的内核类也就是全站最核心类的数据结构。里面的数据只有通过下层的BasicMovie,OriginalFunctionObject等类(见后)直接访问。
备注,核心思想是,确保只有一个。
相关文章推荐
- 设计模式之Singleton(单件)
- 单件模式[Singleton]
- 单件模式(Singleton)和锁定(lock)
- Singleton(单件)模式与类静态函数(实用类)的区别
- Singleton (单件) 设计模式
- 设计模式系列之(一)-------------------单件模式(Singleton)
- 1、Singleton 单件(创建模式)
- Singleton(单件)模式与类静态函数(实用类)的区别
- 单件模式 Singleton
- Singleton 单件模式
- 设计模式入门(1)------单件(Singleton)
- C#面向对象设计模式学习笔记(1) - Singleton 单件模式(创建型模式)
- Singleton(单件)模式的两种实现方法
- 单实例模式的实现(singleton)----单件
- 设计模式学习笔记(二)——Singleton单件模式
- 单件模式(Singleton)
- 五种单件模式之Singleton的实现方法详解
- Singleton(简单单件模式)C++代码
- [整理]C#面向对象设计模式纵横谈(2):Singleton单件(创建型模式)
- singleton modle.(单件模式 / 单态…