`
bruce.peng
  • 浏览: 65727 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

设计模式-单例模式

阅读更多
先从简单的单例模式开始。
画了一个UML图,不知道如何插进来,就放到附件里面了。
public class BasicDao 
{

   private static BasicDao instance;

   private BasicDao()
   {

   }

   public synchronized static BasicDao getInstance()
   {
      if(instance == null)
      {
         instance = new BasicDao();
      }
      return instance;
   }

呵呵,是不是常用到啊,保证一个类仅有一个实例,并提供一个访问它的全局访问点。
很简单,很实用。构造函数是私有的,一个public的静态方法,来保证只有一个实例。方法是synchronized,这个与单例无关。

另外,在flex中,我是这样解决用户信息的。一个UserView.as类,放到session里面,也用到了单例模式。
as代码:
	internal dynamic class UserView{
		
		private static var instance:UserView = null;
		
		...
		
		public static function getInstance():UserView
		{
			if(instance==null)
			{
				instance = new UserView(getInstance);
			}
			return instance;

		}
		
		public function UserView(caller:Function)
		{
			if(caller!=UserView.getInstance)
			{
				throw new Error ("Singleton is a singleton class, use getInstance() instead");
			}
			
			if(UserView.instance !=null)
			{
				throw new Error( "Only one Singleton instance should be instantiated" );
			}
		}
}

当然了,当用户登录后应该将用户的各种信息放进去,这样用户的信息在整个session中都可以得到,并且保证了只有一个实例。(欢迎各位大哥拍砖并提出不足之处)
  • 大小: 9.4 KB
分享到:
评论
3 楼 bruce.peng 2008-05-29  
谢谢。我现在把他改过来
2 楼 flysnail 2008-05-28  
  public static function getInstance():UserView  
        {  
            if(instance==null)  
            {  
                instance = new UserView(getInstance);  
                return instance;  
            }  
            else 
            {  
                return instance;  
            }  


        }  
你觉的这样写好吗?
建议:
public static function getInstance():UserView  
        {  
            if(instance==null)  
            {  
                instance = new UserView(getInstance);  
                  
            }  
          return instance;
        }  
1 楼 bruce.peng 2008-05-27  
Flex单例在As虚拟机种可能有多个实例
======
能否再详细点,谢谢!

相关推荐

    C++设计模式-单例模式

    李建忠老师的设计模式-单例模式讲解,示例以C++编程语言呈现。

    设计模式-单例模式脑图

    设计模式-单例模式脑图

    Java设计模式-单例模式详解

    Java设计模式-单例模式详解 单例模式是 Java 设计模式中的一种常用的设计模式,旨在保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式的目的是为了保证在一个进程中,某个类有且仅有一个实例。 ...

    ava常用设计模式-单例模式

    ava常用设计模式-单例模式 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一,有以下特点: 1. 单例类只能有一个实例。 2. 单例类必须自己创建自己的唯一实例。 3. 单例类必须给所有其他对象提供这一...

    一例读懂设计模式-单例模式、简单工厂模式.zip

    本资源“一例读懂设计模式-单例模式、简单工厂模式.zip”旨在帮助初学者通过实例深入理解这两种重要设计模式:单例模式和简单工厂模式。以下是关于这两个模式的详细讲解。 1. **单例模式**: 单例模式是一种限制类...

    常见设计模式-单例模式

    设计模式-单例模式 单例模式是一种常见的设计模式,它的主要作用是确保在内存中仅创建一次对象,并提供一个全局访问点。单例模式有两种类型:饿汉类型和懒汉类型。 饿汉类型的单例模式是在类加载时创建对象,例如...

    PHP5设计模式-单例模式

    单例模式是一种常用的设计模式,它在软件工程中扮演着控制类实例化过程的角色,确保一个类只有一个实例,并提供全局访问点。这种模式在PHP中尤其常见,特别是在需要频繁实例化然后销毁的对象,或者需要控制共享资源...

    设计模式-单例模式

    **设计模式——单例模式** 单例模式是一种广泛应用于软件设计中的创建型设计模式,它的核心思想是确保一个类只有一个实例,并提供一个全局访问点。这样做的好处在于控制共享资源的访问,比如线程安全的数据库连接池...

    java设计模式----单例模式

    在Java编程语言中,设计模式是一种经过验证的解决常见软件设计问题的最佳实践。单例模式是其中最常用的一种,它的核心思想是确保一个类只有一个实例,并提供全局访问点。单例模式的应用场景包括:控制资源的访问、...

    JAVA-设计模式-创建型模式-单例模式

    JAVA-设计模式-创建型模式-单例模式

    android-设计模式-单例模式(干货)

    android 单例模式 干货 告诉你哪种单例模式最实用 最好用 不再迷茫

    c++设计模式-单例模式

    **单例模式**是软件设计模式中的一种,属于创建型模式。在C++中,单例模式确保一个类只有一个实例,并提供一个全局访问点。这种模式通常用于管理共享资源,如数据库连接、日志系统或者配置文件等。单例模式的主要...

    设计模式-单例模式(讲解及其实现代码)

    单例模式是软件设计模式中的一种,它保证一个类只有一个实例,并提供全局访问点。这种模式在许多场景下非常有用,比如控制共享资源、管理系统级别的对象,如数据库连接池或者线程池等。单例模式的核心在于限制类的...

    通过C++实现设计模式-单例模式.rar

    压缩包代码是一个简单的C++单例模式实现。 在这个例子中,Singleton 类有一个私有的构造函数和一个私有的析构函数,这防止了外部代码直接创建或销毁实例。getInstance 方法是一个静态方法,它返回一个指向 Singleton...

    Java-设计模式-单例模式-实现源码(简单实现、双重检查锁、静态内部类、枚举类)

    单例模式是软件设计模式中的一种经典模式,其主要目的是保证一个类只有一个实例,并提供一个全局访问点。在Java中,有多种实现单例模式的方法,包括简单实现、双重检查锁定(Double-Checked Locking)、静态内部类和...

    java设计模式-单例模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段...

    设计模式-单例设计模式

    单例模式是一种常见的创建型设计模式,其核心思想在于确保一个类仅有一个实例存在,并且该实例由该类自行创建,随后向整个系统提供这一唯一实例。 #### 类图解析 在设计模式中,类图是一种直观展示类结构及关系的...

    iOS 设计模式 -单例

    在iOS开发中,设计模式是解决常见编程问题的模板,为代码组织提供了标准结构。其中,单例模式是一种被广泛使用的模式,它确保一个类在整个应用程序中只有一个实例,并且提供了一个全局访问点来获取这个实例。这样的...

    java设计模式-单例.pdf

    ### Java设计模式——单例模式详解 #### 一、单例模式概述 单例模式是设计模式中的一个重要组成部分,属于创建型模式之一。其主要作用是确保某个类仅有一个实例存在,并提供一个全局访问该实例的方法。这在很多场景...

Global site tag (gtag.js) - Google Analytics