单例模式里的两种

转载 2016年05月31日 11:05:57
<span style="font-size: 18px;">
</span>
<span style="font-size: 18px;">所谓“懒汉式”与“饿汉式”的区别,是在与建立单例对象的时间的不同。
“懒汉式”是在你真正用到的时候才去建这个单例对象:
比如:有个单例对象
public class Singleton{ 
    private Singleton(){}
    private static Singleton singleton = null;  //不建立对象
    public static synchronized Singleton getInstance(){
             if(singleton == null) {        //先判断是否为空                </span><pre id="best-answer-content" class="reply-text mb10" name="code" style="font-size: 14px; white-space: pre-wrap; word-wrap: break-word;"><span style="font-size: 18px;">                 singleton = new Singleton ();  //懒汉式做法 
             }
             return singleton ;
     }
</span>
}
 “饿汉式”是在不管你用的用不上,一开始就建立这个单例对象:比如:有个单例对象
<span style="font-size: 18px;">public class Singleton{ 
    public Singleton(){}
    private static Singleton singleton = new Singleton();  //建立对象
</span><pre id="best-answer-content" class="reply-text mb10" name="code" style="white-space: pre-wrap; word-wrap: break-word;"><span style="font-size: 18px;">    public static Singleton getInstance(){
</span>
 return singleton ;//直接返回单例对象 }}

它有以下几个要素:

  • 私有的构造方法
  • 指向自己实例的私有静态引用
  • 以自己实例为返回值的静态的公有的方法
转自:点击打开链接


            

相关文章推荐

单例模式 (两种)及多线程下的优化

单例模式是常用的设计模式 主要有饿汉和懒汉式  public class SingletonTest { public static void main(String[] ar...

ios 单例模式 两种写法

创建一个单例很多办法。我先列举一个苹果官方文档中的写法。   [cpp] view plaincopy static AccountManager *Defa...

单例模式两种创建方法详解

IOS 中单例设计模式的解读与用法 一、单例的作用       顾名思义,单例,即是在整个项目中,这个类的对象只能被初始化一次。它的这种特性,可以广泛应用于某些需要全局共享的资...

单例模式及单例类的两种实现

单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在...

单例模式的简单实现与两种实现方法的比较(饿汉式和懒汉式)(二)

饿汉式与懒汉式是单例模式的两种不同的写法,究竟使用哪个更为方便和安全呢? 首先我们已经知道饿汉式是在外部类访问该对象前,该对象就已经存在了,而懒汉式是等到有外部类访问时才创建对象的。 我们可能会以为使...

【java】单例模式的两种实现方式

饿汉式: /* * 设计模式:设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、以及解决问题的思考方式。 * 23种设计模式 * * 单例的设计模式: * 1,解决的问题...

单例模式的两种线程安全并且效率的写法

单例模式

两种单例模式比较(懒汉式、恶汉式)

懒汉式单例模式在类加载时不实例化该单例对象,在调用公共方法时才实例化,因此类加载速度快,运行时速度较慢。而饿汉式单例模式在类加载时就实例化该单例对象,因此类加载速度慢,运行时速度较快。
  • kyyee
  • kyyee
  • 2015-12-23 10:24
  • 689

单例模式常用的的两种写法

单例模式很常用,Java中写法各异,哪种更合理高效呢。一般单例都是五种写法。懒汉式,饿汉式,双重校验锁,枚举和静态内部类。什么时候用懒汉式,何时用饿汉式应该清楚。一, 单例模式特点:1)一个类只有一个...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)