`

设计模式快速参考-单例模式

阅读更多
class Singleton{

   private Singleton(){
   }

   private static Singleton singleton = null;

   public static Singleton getInstance(){
      if(null == singleton){
         singleton = new Singleton();
      }
      return singleton;
   }
   public String otherOperation(){
      //方法实现
   }
}
 


Client:

 

String str = Singleton.getInstance().otherOperation();
 


多线程时使用 double-check 模式确保线程安全:

 

class Singleton{
   
   private Singleton(){
   }
   private static Singleton singleton = null;
   public static Singleton getInstance(){
      if(null == singleton)
         sychronized (Singleton.class){
          if(null == singleton){
             singleton = new Singleton();
          }
       }
    }
    return singleton;
  }
}
 

 

分享到:
评论
2 楼 gurudk 2009-02-01  
ws715 写道

缺一个私用的构造函数 private Singleton(){}

You are right thanks!
1 楼 ws715 2009-02-01  
缺一个私用的构造函数
private Singleton(){}

相关推荐

    设计模式之单例模式Java实现和类设计图

    本次我们将深入探讨两种设计模式——单例模式和装饰模式,它们在Java编程中都有着广泛的应用。 首先,让我们来理解“单例模式”。单例模式是一种创建型设计模式,其核心思想是保证一个类只有一个实例,并提供一个...

    设计模式精解-GoF 23种设计模式解析附C++实现源码 完整版

    这份资源主要关注GoF(Gang of Four,即《设计模式:可复用面向对象软件的基础》一书的四位作者)提出的23种设计模式,并提供了C++语言的实现代码,是提升C++程序员设计能力的高级参考资料。 设计模式是经过时间和...

    《Java设计模式》课后答案-刘伟.rar

    创建型设计模式如单例(Singleton)、工厂方法(Factory Method)、抽象工厂(Abstract Factory)、建造者(Builder)和原型(Prototype),它们主要关注对象的创建过程,使得代码更加灵活且易于扩展。 结构型设计...

    JS 设计模式之:单例模式定义与实现方法浅析

    本文实例讲述了JS 设计模式之:单例模式定义与实现方法。分享给大家供大家参考,具体如下: 良好的设计模式可以显著提高代码的可读性,降低复杂度和维护成本。笔者打算通过几篇文章通俗地讲一讲常见的或者实用的设计...

    C#经典设计模式及代码示例

    《C#经典设计模式及代码示例》是针对C#开发者深入理解并应用设计模式的一份宝贵资源。设计模式是软件工程中经过实践验证的、解决常见问题的有效模板,能够帮助程序员提高代码的可读性、可维护性和复用性。这本书结合...

    【资源免费下载】Java代码积累丨大话设计模式(Java实现版本)、线程协作

    设计模式参考《大话设计模式》 工厂简单模式 创造型模式 工厂方法模式 抽象工厂模式 原型模式 建造者模式 单例模式 结构型模式 队列模式 桥接模式 组合模式 装饰模式 外观模式 享元模式 代理模式 行为模式(类行为...

    [综合]设计模式C实现单例模式参考.pdf

    单例模式是一种软件设计模式,它的核心思想是保证一个类只有一个实例,并且提供一个全局访问点,以便在程序的任何地方都可以方便地获取这个唯一实例。这样做的好处在于可以控制对象的创建数量,减少资源消耗,同时...

    《Java设计模式》课后习题参考答案-刘伟(20180723).pdf

    此外,为了确保参考资料的权威性,建议读者查阅原书《Java设计模式》以获得更加详尽的解释和说明。如果有任何意见或建议,可以通过提供的电子邮箱与作者联系。在学习设计模式的过程中,理解每一个模式的意图、结构、...

    设计模式代码-仅供参考

    "设计模式代码-仅供参考"这个主题,意味着我们将探讨如何通过代码实现这些设计模式。 在给定的标签“源码”和“工具”中,我们可以推测这个压缩包可能包含了用于理解和学习设计模式的实际代码示例。源码是理解设计...

    浪潮软件技术培训之设计模式(ppt-21页).ppt

    Erich Gamma等人的著作《设计模式:可复用面向对象软件的基础》进一步推动了设计模式的发展,这本书成为了面向对象设计模式的经典参考。 设计模式通常包括三个主要部分:问题、解决方案和后果。问题描述了何时应该...

    C#语法,数据库实例,设计模式----学习C#的必备资料,一应俱全!

    在C#中,常见的设计模式包括单例模式(确保类只有一个实例)、工厂模式(提供创建对象的接口)、观察者模式(定义对象间的一对多依赖关系)、装饰器模式(动态地给对象添加新的行为)和策略模式(定义一系列算法,并...

    java设计模式.高清影印版

    描述中提到"JAVA设计模式高清影印版,在开发过程中可以参考一下",这暗示了这份资料可能是从纸质书籍扫描而来,清晰度高,适合在开发工作中作为参考材料。对于开发者来说,理解并熟练应用设计模式能提升他们的编程...

    C#设计模式–单例模式

    同时在学习过程中也查看了很多博客园中关于设计模式的一些文章的,在这里记录下我的一些学习笔记,一是为了帮助我更深入地理解设计模式,二同时可以给一些初学设计模式的朋友一些参考。首先我介绍的是设计模式中比较...

    软件设计模式--关于设计模式的PPT

    常见的设计模式可以分为三大类:创建型模式(如单例模式、工厂方法模式)、结构型模式(如适配器模式、装饰器模式)和行为型模式(如观察者模式、策略模式)。每种模式都有其特定的应用场景和解决策略,熟悉这些模式...

    JavaScript 设计模式(高清扫描版本)- 张容铭

    JavaScript设计模式是由张容铭编著的一本关于JavaScript编程领域的重要参考书籍,主要探讨了如何在JavaScript编程中应用设计模式来提升代码质量和可维护性。设计模式是软件工程中的最佳实践,它们是针对常见问题的...

    参考文档-23种JAVA设计模式和15种J2EE设计模式.zip

    本资源“参考文档-23种JAVA设计模式和15种J2EE设计模式.zip”包含了Java语言和J2EE平台下广泛使用的设计模式,旨在帮助开发者提升软件设计能力,实现更加高效、灵活和可维护的代码。 首先,我们关注Java的23种经典...

    播放器设计demo:工厂,单例,策略等模式巩固

    此外,项目中包含的“参考文章.txt”可能提供了关于这些设计模式的深入讨论和示例代码,而“test_pattern”可能是一个测试目录,包含了对这些设计模式实现的单元测试,以确保功能的正确性和健壮性。测试对于任何软件...

    GOF-设计模式-Design Patterns-英文原版-高清-有目录-有页码

    ### GOF设计模式详解 #### 一、设计模式概述 **设计模式**(Design Patterns)是软件工程中的一个重要概念,它是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。本章节将从多个角度对设计模式...

    GOF设计模式中英文+设计模式精解中英文

    总之,GOF设计模式和设计模式精解是软件工程师的宝贵参考资料,无论你是初学者还是经验丰富的开发者,都应该熟悉和掌握这些模式,以便在项目中灵活运用,提高代码质量和可维护性。通过深入学习这些设计模式,不仅...

    《Java设计模式》刘伟 课后习题及模拟试题答案.rar

    课后习题参考答案部分涵盖了书中各个章节的关键知识点,包括创建型模式(如单例模式、工厂方法模式、抽象工厂模式)、结构型模式(如适配器模式、装饰器模式、代理模式、桥接模式、组合模式、外观模式、享元模式)...

Global site tag (gtag.js) - Google Analytics