笔记:设计模式(2)-Singleton单例模式


动机(Motivation)

在系统开发中,经常有一些特殊类,必须保证它们在系统中只存在一个实例,才能确保他们逻辑的正确性以及良好的效率。

谨记,确保只存在一个实例是类设计者的责任,而不是使用者的责任。

结构(Structure)

实现(Actionscript Code)

package
{
	/**
	 * 两种实现方式:内部类,抛出异常
	 * @author 506
	 */
	public class Singleton
	{
		private var _instance:Singleton;

		public function Singleton(privateClass:PrivateClass)
		{
			if (_instance == null)
			{
				throw new Error("单例不能被创建多次");
			}
		}

		public static function getInstance():Singleton
		{
			if (_instance == null)
			{
				_instance = new Singleton(new PrivateClass());
			}
			return _instance;
		}
	}
}

class PrivateClass
{

}

参考文献(reference)

《C#面向对象设计模式纵横谈》视频

优质内容筛选与推荐>>
1、BZOJ 4500: 矩阵 差分约束
2、抽象工厂
3、博客迁移至新平台ixirong.com
4、MS-SQL表复制
5、C语言编译过程以及gcc编译参数


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号